【发布时间】:2017-12-07 00:20:24
【问题描述】:
我有一些 sql 表
table classes(id_classes,specialty,level)
table Teaching unit(id_unit,name,...,#id_classes)
table courses(#id_course,....,#id_unit)
table groupes(id_groupe,...,#id_classes)
table assignment(#id_groupe,#id_course)
我想为给定的小组查找不在作业中的课程 所以这个课程取决于取决于 groupe 的 classe 的单元
我写了这段代码
select * from courses c
left join assignment a
on a.idcourse=c.idcourse and a.id_groupe ='given id'
where a.id_courses is null
但这会返回课程取决于所有未分配的课程
附加信息(从评论中复制)
例如,我有一个 id 为 1 的班级和一个 id 为 2 的班级 id 为 1 的课程 1 ,2 和 3 依赖于单元 1 依赖于班级 1 课程 4,5 和 6 依赖于单元 2 依赖于班级2 我有一个 groupe 1 依赖于表分配中的 classe 1 我有 2 行 (groupe1,courses1),(groupe1,courses2) 我想进行查询以返回仍未分配给 groupe 1 的课程 3 查询返回课程 3、4、5 和 6,但我只想获得课程 3
select c.* from courses c ,unit u where (courses not in asignment where id_groupe=given id) and u.idunit=c.idunit and u.classes is the same classes form the given groupe
【问题讨论】:
-
我没有关注...您能否分享一些示例数据、您获得的结果以及期望的结果?您编写的查询将返回所有没有作业记录的课程,这听起来像是您想要得到的。
-
这个查询返回所有不在表assignement中的课程,我只想让crouses依赖于给定groupe的同一类
-
例如,我有一个 id 为 1 的课程和一个 id 为 2 的课程 groupe 的 id 为 1 课程 1 ,2 和 3 取决于单元 1,这取决于课程 1 课程 4,5 和 6 取决于单元2 依赖于类 2 我有一个分组 1 依赖于表分配中的类 1 我有 2 行 (groupe1,courses1),(groupe1,courses2) 我想进行查询以返回仍未分配给的课程 3 groupe 1 查询返回课程 3、4、5 和 6,但我只想获得课程 3
标签: mysql sql hibernate join left-join