MySQL数据库 高级查询(二)

 高级查询()

 EXISTS 子查询

语法: SELECT ..... FROM  表名 WHERE EXISTS (子查询);

EXISTS 关键字后面的参数是一个任意的子查询,如果该子查询有返回值,EXISTS 子查询的结果为true,此时再执行外层查询语句.如果没有返回行,EXISTS 子查询

的结果为false,此时外层语句不再执行查询.

 NOT EXISTS 子查询

 EXISTS 子查询和NOT EXISTS 子查询的结果只取决于是否有返回记录,不取决于这些记录的内容,所以EXISTS 子查询和NOT EXISTS 子查询后SELECT语句中的字段列表通常是无关紧要的.

子查询注意事项

  注意事项

1.子查询语句可以嵌套在SQL语句中任何表达式出现的位置

语法: SELECT (子查询) FROM  表名;

SELECT * FROM (子查询)) AS 表的别名;

2.只出现在子查询中而没有出现在父查询中的表不能包含在输出列中

原文地址:https://www.cnblogs.com/jibanmiaomiao/p/7603873.html