常  海拔与大气压
用  管道推荐流速
资  常用符号汇总
料  饱和蒸汽性质
查  换热系数推荐
询  常见物质粘度

专题检索 管理入口


法规规范   ◆设计标准   ◆材料标准   ◆部件标准   ◆制造修理   ◆基础知识   ◆综合专题   ◆通用设备   ◆行业综合  
◆ 行业综合>>行业综合>>SQL中的子查询的使用
SQL中的子查询的使用
全文链接       2015/5/19  


SQL中的子查询的使用

子查询,也称为嵌套查询或子选择,是SELECT嵌入在另一个SQL查询的 WHERE 或 HAVING子句中的查询。子查询返回的数据由外部语句使用,与使用文字值的方式相同。

子查询提供了一种简单而有效的方法来处理依赖于另一个查询结果的查询。它们几乎与普通的SELECT语句相同,但几乎没有限制。最重要的几点如下:

子查询必须始终出现在括号内。

子查询必须只返回一列。这意味着不能在子查询中使用SELECT *,除非所引用的表只有一列。如果目的是行比较,可以使用返回多列的子查询。

您只能使用返回多个值运算符(例如IN 或 NOT IN运算符)的多行的子查询。

子查询不能是UNION。只允许一个SELECT语句。

子查询最常与SELECT语句一起使用,但是也可以在INSERT,UPDATE或DELETE语句中或在另一个子查询中使用它们。

带有SELECT语句的子查询 以下语句仅返回订单表中订单价值超过5000美元的那些客户的详细信息。 还要注意,我们在子查询中使用了关键字DISTINCT从结果集中消除了重复的cust_id值。

示例 SELECT * FROM customers WHERE cust_id IN (SELECT DISTINCT cust_id FROM orders WHERE order_value > 5000); 提示:子查询可以返回单个值,单个行,单个列或包含一个或多个行或一个或多个列的表。

注意:子查询可以嵌套在外部SELECT,INSERT,UPDATE或DELETE语句的WHERE或HAVING子句中,也可以嵌套在其他子查询中。

带有INSERT语句的子查询 子查询也可以与INSERT语句一起使用。这是一个实例:

示例 INSERT INTO premium_customers SELECT * FROM customers WHERE cust_id IN (SELECT DISTINCT cust_id FROM orders WHERE order_value > 5000); 上面的语句将通过使用子查询返回的数据,将高级客户的记录插入名为premium_customers的表中。 这里的高级客户是已下订单价值超过5000美元的客户。

提示:查阅有关SQL克隆表的教程,以了解如何使用INSERT ... SELECT 语句快速将多行从另一个表插入到表中。

带有UPDATE语句的子查询 您还可以将子查询与UPDATE语句结合使用,以更新表中的单列或多列,如下所示:

示例 UPDATE orders SET order_value = order_value + 10 WHERE cust_id IN (SELECT cust_id FROM customers WHERE postal_code = 75016); 通过将当前订单值增加10美元,上述语句将更新订单(orders)表中邮政编码为75016的地区的客户的订单值。

带有DELETE语句的子查询 同样,可以将子查询与DELETE语句结合使用,以删除表中的单行或多行,如下所示:

示例 DELETE FROM orders WHERE order_id IN (SELECT order_id FROM order_details WHERE product_id = 5); 上面示例中的SQL语句将从包含product_id为5的产品的订单表中删除这些订单。



原作者:不详
来 源:网络
共有557位读者阅读过

告诉好友

  • 上篇文章百度网盘TV版
  • 下篇文章HG/T 20570-95 工艺系统工程设计技术规范(全套)
  • □- 本周热门文章 □- 相关文章
    1.喷射混合器[1242]
    2.制药设备GMP设计规范化要求[1092]
    3.关于特种设备行政许可有关事项的实施意见〔2019〕32号[981]
    4.常用工程塑料的代号、性能特点与应用表[914]
    5.SY/T 7085-2016 承压设备的设计计算[883]
    6.常用橡胶的品种 特性[861]
    7.公告 2012年 第18号 制药工业污染防治技术政策[705]
    GB/T 30354-2013 食用植物油散装运输规范
    NPT牙、PT牙、管螺纹的区别
    SolidWorks Toolbox设置中文技巧
    搜索引擎命令大全
    正常体温
    油罐车结构
    流程工厂P&ID设计的最佳实践 - PLANT3D快速上手教程
    资料主要来源于图书和网络,如有侵权请联系:5585196@qq.com 删除   压力容器设计参考  【苏ICP备2021048014号-1】