zoukankan      html  css  js  c++  java
  • SQL 必知必会·笔记<9>使用子查询

    子查询(subquery),即嵌套在其他查询中的查询。

    1. 利用子查询进行过滤

    SELECT 语句中,子查询总是从内向外处理。示例:

    1 SELECT cust_name, cust_contact
    2 FROM Customers
    3 WHERE cust_id IN (SELECT cust_id
    4                   FROM Order
    5                   WHERE order_num IN (SELECT order_num
    6                                       FROM OrderItems
    7                                       WHERE prod_id = 'RGAN01'));

     注意:只能是单列

    作为子查询的SELECT 语句只能查询单个列。企图检索多个列将返回错误

    提示:格式化SQL

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

    提示:谨慎使用子查询

    在WHERE 子句中使用子查询能够编写出功能很强且很灵活的SQL 语句。对于能嵌套的子查询的数目没有限制,不过在实际使用时由于性 能的限制,不能嵌套太多的子查询。

    2. 作为计算字段使用子查询

    示例:

    1 SELECT cust_name,
    2        cust_state,
    3        (SELECT COUNT(*)
    4         FROM Orders
    5         WHERE Orders.cust_id = Customers.cust_id) AS orders
    6 FROM Customers
    7 ORDER BY cust_name;
  • 相关阅读:
    cl编译器命令行调试问题
    西电计算机专业培养
    GCN代码实现
    GCN介绍
    cpu密集型任务及IO密集型任务,GIS,多进程及多线程
    骨架提取
    视频文件的一些属性
    空洞填充
    凸包,二值图家矩形框
    RGB图片取大于阈值部分
  • 原文地址:https://www.cnblogs.com/IPrograming/p/3291731.html
Copyright © 2011-2022 走看看