SQL:根据多个表中的偶数,奇数值获取行

时间:2015-11-07 06:08:45

标签: mysql sql

考虑以下表格:

course (course_id, title, dept_name, credits)
section (course_id, sec_id, semester, year, building, room_no, time_slot id)
instructor (id, name, dept_name, salary)
takes (id, course_id, sec_id, semester, year, grade)

需要查询:

  1. 查找偶数和奇数学期提供的课程
  2. 查找在2012学年开设至少一门课程的教师姓名
  3. 这是来自过去的大学考试试卷。

1 个答案:

答案 0 :(得分:0)

我认为#2是不可能的,因为instructor.id没有出现在任何其他表中。

对于#1,您可以尝试

SELECT *
FROM `course` `c`
INNER JOIN `section` `even` ON `c`.`course_id` = `even`.`course_id`
INNER JOIN `section` `odd` ON `c`.`course_id` = `odd`.`course_id`
WHERE `even`.`semester` % 2 = 0 
  AND `odd`.`semester`  % 2 = 1;