在 SQL 中,子查询是一个查询嵌套在另一个查询中的查询,也被称为内部查询。子查询可以用来创建更复杂的查询,从而实现更高级的数据检索和分析。
子查询可以根据其位置和返回结果的数量和数据类型分为以下三种类型:
SELECT first_name, last_name, salary
FROM employees
WHERE salary > (SELECT AVG(salary) FROM employees);
在这个例子中,子查询 (SELECT AVG(salary) FROM employees)
返回平均工资,然后在 WHERE 子句中将其与员工的薪资进行比较。
SELECT product_name, product_price
FROM products
WHERE product_category_id IN (SELECT category_id FROM categories WHERE category_name = 'Electronics');
在这个例子中,子查询 (SELECT category_id FROM categories WHERE category_name = 'Electronics')
返回电子类别的 ID,然后在 WHERE 子句中将其与产品表中的产品类别 ID 进行比较。
SELECT c.customer_name, o.order_number, o.order_date
FROM customers c
JOIN (SELECT order_id, order_number, order_date, customer_id FROM orders) o
ON c.customer_id = o.customer_id;
在这个例子中,子查询 (SELECT order_id, order_number, order_date, customer_id FROM orders)
返回订单表的一部分,然后将其与客户表进行连接,以获取每个客户的订单信息。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有