Mysql自定义条件

时间:2013-08-23 11:45:59

标签: mysql sql

我的表是:

my table

我想选择所有失败的记录(结果= 0),但具有相同course_id结果的人除外1。

例如,查看我的表有两行有result = 0但是student_id = 1有另一行,结果= 1所以我想跳过这条记录。

很抱歉让您感到困惑。我希望我的期望输出清楚地解释了我想要的内容。

期望输出为:

2 | 1 | 0

1 个答案:

答案 0 :(得分:3)

试试这个

SELECT student_id, course_id, result FROM tbl WHERE result = 0 
AND student_id NOT IN (SELECT student_id FROM table WHERE result =1 
                                      and course_id = tbl.course_id )

上面我们选择的所有记录只有在result =0

的子查询中找不到student_id和course_id时才会显示result=1