子查询在数据库中的用途及示例
问题:什么是 DB2 子查询?子查询有什么用途?请结合 ORDERS 表的示例解释子查询。
解答
在 DB2 中,子查询是在查询内部的查询,即嵌套查询。子查询先执行,然后执行其父查询。我们可以嵌套多达 15 层的子查询。
例如,如果我们在 DB2 中有以下 ORDERS 表。
订单ID (ORDER_ID) | 订单总额 (ORDER_TOTAL) |
Z22345 | 1267 |
Z62998 | 6734 |
Z56902 | 8815 |
Z56911 | 78990 |
Z56915 | 432 |
Z56918 | 77453 |
如果我们想要从 ORDERS 表中提取所有订单总额超过平均值的订单,我们可以使用下面的子查询。
示例
SELECT ORDER_ID FROM ORDERS WHERE ORDER_TOTAL > (SELECT AVG(ORDER_TOTAL) FROM ORDERS)
上述查询的结果如下所示。
订单ID (ORDER_ID) | 订单总额 (ORDER_TOTAL) |
Z22345 | 78990 |
Z62998 | 77453 |
广告