使用子查詢 子查詢 查詢(query) 任何SQL語句都是查詢。但此術語一般指SELECT語句。 SQL還允許創建子查詢(subquery),即嵌套在其他查詢中的查詢。 利用子查詢進行過濾 SELECT cust_id FROM orders WHERE order_num IN (SELECT o ...
使用子查詢
子查詢
查詢(query) 任何SQL語句都是查詢。但此術語一般指SELECT語句。
SQL還允許創建子查詢(subquery),即嵌套在其他查詢中的查詢。
利用子查詢進行過濾
SELECT cust_id FROM orders WHERE order_num IN (SELECT order_num FROM orderitems WHERE prod_id = 'TNT2');
註意:
- 列必須匹配:在WHERE子句中使用子查詢(如這裡所示),應該保證SELECT語句具有與WHERE子句中相同數目的列。通常,子查詢將返回單個列並且與單個列匹配,但如果需要也可以使用多個列。
- 子查詢和性能:這裡給出的代碼有效並獲得所需的結果。但是,使用子查詢並不總是執行這種類型的數據檢索的最有效的方法。
作為計算欄位使用子查詢
SELECT cust_name, cust_state, (SELECT COUNT(*) FROM orders WHERE orders.cust_id = customers.cust_id) AS orders FROM customers ORDER BY cust_name;