什么是相关子查询?和哪个运算符相关?应用时需要注意什么
1个回答
关注
展开全部
1. 什么是子查询
子查询是指插入在其他SQL语句中的SELECT语句,也称为嵌套查询。 使用子查询主要是将结果作为外部主查询的查询条件来使用的查询。
2. 什么时候使用子查询
当要显示的数据表里并不存在,但可以通过对已有的数据加工或得,可通过子查询实现
子查询可以出现在SELECT 、WHERE子句、FROM子句、DML语句、DDL与中
在SELECT、INSERT、UPDATE或DELETE命令中允许是一个表达式的地方都可以包含子查询,子查询甚至可以包含在另外一个子查询中。
3. 子查询编写思路
仔细分析题目,确定要查询的表及字段(数据)
分析要查询的字段(数据)哪些在表里直接存在,哪些不存在
考虑如何把要显示的数据造出来(通过查询语句获得)
考虑子查询与表的连接点是什么(通常是主外键,共有字段)
考虑子查询要放在什么位置
组合成完整的SQL语句
4. 使用子查询的注意事项
要将子查询放入圆括号中。
子查询可出现在WHERE子句、FROM子句、SELECT列表(此处(SELECT)只能是一个单行子查询)和HAVING子句,DDL,DML中。
子查询不能出现在主查询的GROUP BY语句中
子查询和主查询可以使用不同表,只要子查询返回的结果能够被主查询使用即可。
单行子查询只能使用单行操作符,多行子查询只能使用多行操作符。
在多行子查询中,ALL和ANY操作符不能单独使用,而只能与单行比较符(=、、=、>)结合使用。
要注意子查询中的空值问题。如果子查询返回了一个空值,则主查询将不会查询任何结果。
在WHERE子句中进行子查询的时候,不能带有GROUP BY子句。
子查询允许嵌套多层,但不能超过255层。
咨询记录 · 回答于2021-06-12
什么是相关子查询?和哪个运算符相关?应用时需要注意什么
相关子查询指的是查询中再查询,通常是以一个查询作为条件来供另一个查询使用1>非相关子查询是独立于外部查询的子查询,子查询总共执行一次,执行完毕后将值传递给外部查询。相关子查询的执行依赖于外部查询的数据,外部查询执行一行,子查询就执行一次。
1. 什么是子查询子查询是指插入在其他SQL语句中的SELECT语句,也称为嵌套查询。 使用子查询主要是将结果作为外部主查询的查询条件来使用的查询。2. 什么时候使用子查询当要显示的数据表里并不存在,但可以通过对已有的数据加工或得,可通过子查询实现子查询可以出现在SELECT 、WHERE子句、FROM子句、DML语句、DDL与中在SELECT、INSERT、UPDATE或DELETE命令中允许是一个表达式的地方都可以包含子查询,子查询甚至可以包含在另外一个子查询中。3. 子查询编写思路仔细分析题目,确定要查询的表及字段(数据)分析要查询的字段(数据)哪些在表里直接存在,哪些不存在考虑如何把要显示的数据造出来(通过查询语句获得)考虑子查询与表的连接点是什么(通常是主外键,共有字段)考虑子查询要放在什么位置组合成完整的SQL语句4. 使用子查询的注意事项要将子查询放入圆括号中。子查询可出现在WHERE子句、FROM子句、SELECT列表(此处(SELECT)只能是一个单行子查询)和HAVING子句,DDL,DML中。子查询不能出现在主查询的GROUP BY语句中子查询和主查询可以使用不同表,只要子查询返回的结果能够被主查询使用即可。单行子查询只能使用单行操作符,多行子查询只能使用多行操作符。在多行子查询中,ALL和ANY操作符不能单独使用,而只能与单行比较符(=、、=、>)结合使用。要注意子查询中的空值问题。如果子查询返回了一个空值,则主查询将不会查询任何结果。在WHERE子句中进行子查询的时候,不能带有GROUP BY子句。子查询允许嵌套多层,但不能超过255层。
已赞过
评论
收起
你对这个回答的评价是?