MySQL中有exists关键字吗_Mysql 数据库中Exists 关键字的使用

一、Mysql 数据库中Exists 关键字的使用

1.Exists是sql语句中用来判断有没有符合条件的,如果有,则执行下面And的查询,没有,则不执行。写法如下:

/*检查Logic Java课程 最近一次考试。如果有成绩达到80分以上者,则显示分数排在前5名学员的学号和分数*/

SELECT `studentNo` AS 学号,`studentResult` 成绩 FROM `result`WHERE EXISTS (

#查询Logic Java 、最后一次考试、成绩大于80的记录

SELECT * FROM `result`  WHERE `subjectNo` = (

SELECT `subjectNo` FROM `subject` WHERE `subjectName` = 'Logic Java'    #条件1,Logic Java课程

)  AND `examDate` = (                                                                                     #条件2,最近一次考试

SELECT MAX(`examDate`) FROM `result` WHERE `subjectNo` = (

SELECT `subjectNo` FROM `subject`

WHERE `subjectName` = 'Logic Java')

) AND `studentResult` > 50 ;                                                                          #条件3,成绩达到80分以上

)

AND `subjectNo` = ( SELECT `subjectNo` FROM `subject`

WHERE `subjectName` = 'Logic Java')

ORDER BY `studentResult` DESC LIMIT 5;   #按成绩降序排序,显示前5名

大家看懂了吗?学习方法小建议,把代码复制到Sqlyog上,通过点击一个一个括号来厘清层级关系,肉眼看真的挺难。

你可能感兴趣的:(MySQL中有exists关键字吗_Mysql 数据库中Exists 关键字的使用)