使用子查询

使用子查询

子查询

查询:任何SQL语句都是查询。但此术语一般指SELECT语句

利用子查询进行过滤

通过多重的子查询,可以实现从多个表格中调用其中的某些列

使用子查询的原理:在SELECT语句中,子查询总是从内向外处理。在处理上面的SELECT语句时,MySQL实际上执行了两个操作。

语法结构

1
2
3
4
5
6
SELECT 表格1中的列名
FROM 表格1
WHERE 列名 IN(
SELECT 表格2中的列名
FROM 表格2
WHERE 限制条件);

从上边的语法结构可以看出,子查询的套用就是用另一个SELECT子句来替换了WHERE子句的过滤的作用

格式化SQL:包含子查询的SELECT语句难以阅读和调试,特别是它们较为复杂时更是如此。如上所示把子查询分解为多行并且适当地进行缩进,能极大地简化子查询的使用。

在WHERE子句中使用子查询能够编写出功能很强并且很灵活地SQL语句。对于能嵌套的子查询的数目没有限制。

子嵌套的要求

列必须匹配,在WHERE子句中使用子查询应该保证SELECT语句具有与WHERE子句中相同数目的列。

作为计算字段使用子查询

相关子查询

涉及外部查询的子查询。这种类型的子查询称为相关子查询。任何时候只要列名可能有多义性,就必须使用这种语法。

Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2015-2023 dwx
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信