使用循环id删除结果的mysql查询

使用循环id删除结果的mysql查询,mysql,Mysql,我有一个sql查询,我必须提供ID才能工作,在本例中为100 SELECT * FROM students_subjects WHERE student_id NOT IN (SELECT student_id FROM students_info WHERE class_id=(SELECT class_id FROM groups WHERE group_id=(SELECT group_id FROM teacher_groups_subjects WHERE t_g_s_id=**1

我有一个sql查询,我必须提供ID才能工作,在本例中为100

SELECT * FROM students_subjects WHERE student_id 
NOT IN 
(SELECT student_id FROM students_info WHERE class_id=(SELECT class_id FROM groups WHERE group_id=(SELECT group_id FROM teacher_groups_subjects WHERE t_g_s_id=**100**)))
我想从表teacher\u groups\u subjects中选择所有行,并对每个ID t\u g\u s\u ID运行上面的查询

有人吗?

可能是这样的:-

SELECT * 
FROM students_subjects a 
LEFT OUTER JOIN students_info b ON a.student_id = b.student_id
LEFT OUTER JOIN groups c ON b.class_id = c.group_id
LEFT OUTER JOIN teacher_groups_subjects d ON c.group_id = d.group_id
WHERE b.student_id IS NULL

使用prodecure或函数进行循环。我可以在没有表或过程的查询中执行此操作吗?您是否尝试在t_g_s_id=从tableName中选择id的位置执行此操作?这将返回多个id,这是一个错误谢谢,这适用于学生id不存在的位置。我想找出组id用于班级id不同于表组中所用id的学生的位置。。你能帮我吗?!对你想要什么有点困惑。虽然你可以做一个类似于上面的连接,但是改变WHERE子句来检查一个空的c.group_id,我不确定这在逻辑上会给你一些有用的东西,除了分配给一个并不复杂的类的学生列表。。在学生信息中,我有班级id和学生id。在小组中,我有班级id和小组id。在教师小组科目中,我有班级id、小组id和学生id,,,,,我想找到学生,他们在表学生信息中的班级id不等于表教师小组科目中的班级id?!我觉得我遗漏了一些东西,但是如果你只是想在学生id上匹配,然后检查班级是否不匹配,请选择*从学生信息中选择*内部加入教师组中选择b在a.student\u id=b.student\u id中选择a.class\u id!=b、 类别识别码