请教高手一句SQL

chancehi 2010-03-26 02:59:17
显示考试安排有冲突的考生及考试课程和时间

所谓有冲突,就是指一个考生同一时间(或考试时间有交集)安排了两门及两门以上的考试

表1:课程表 TC
cid 课程id
cname 课程名
Ctype 考试方式

表2:考试表TE
eId 考试id
cid 课程id
beginTime 开始时间
endTime 结束时间

表3:考试安排表TSE
studentId 学生id
examId 考试id
...全文
50 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2010-03-26
  • 打赏
  • 举报
回复
select *
from 考试安排表TSE a inner join 考试表TE b on a.考试id=b.考试id
inner join 课程表TC c on c.课程id=b.课程id
where exists (
select 1 from 考试安排表TSE a1 inner join 考试表TE b1 on a1.考试id=b1.考试id
where a1.学生id=a.学生id and a1.考试id!=a.考试id
and b.结束时间>=b1.开始时间 and b.开始时间<=b1.结束时间)

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧