SQL 必知必會 筆記 9 使用子查詢

2021-09-22 06:17:42 字數 1020 閱讀 5795

子查詢(subquery),即巢狀在其他查詢中的查詢。

select 語句中,子查詢總是從內向外處理。示例:

1

select

cust_name, cust_contact

2from

customers

3where cust_id in (select

cust_id

4from

order

5where order_num in (select

order_num

6from

orderitems

7where prod_id =

'rgan01

'));

注意:只能是單列作為子查詢的select 語句只能查詢單個列。企圖檢索多個列將返回錯誤

包含子查詢的select 語句難以閱讀和除錯,它們在較為複雜時更是 如此。如上所示,把子查詢分解為多行並進行適當的縮排,能極大地 簡化子查詢的使用。

在where 子句中使用子查詢能夠編寫出功能很強且很靈活的sql 語句。對於能巢狀的子查詢的數目沒有限制,不過在實際使用時由於性 能的限制,不能巢狀太多的子查詢。

示例:

1

select

cust_name,

2cust_state,

3 (select

count(*)4

from

orders

5where orders.cust_id = customers.cust_id) as

orders

6from

customers

7order

by cust_name;

SQL 必知必會 筆記 9 使用子查詢

子查詢 subquery 即巢狀在其他查詢中的查詢。select 語句中,子查詢總是從內向外處理。示例 1 select cust name,cust contact 2from customers 3where cust id in select cust id 4from order 5wher...

SQL必知必會 筆記 子查詢 IN

查詢 query 任何sql語句都是查詢。但此術語一般指select 語句。子查詢 subquery 即巢狀在其他查詢中的查詢,也可以說,巢狀在其他select語句中的select語句。舉個例子,我們想知道購買tnt2產品的客戶的id,但是產品id和客戶id不在同一張表上,兩張表的訂單號碼這一列是相...

SQL必知必會筆記十一(使用子查詢)

select語句是sql的查詢。我們迄今為止所看到的所有select語句都是簡單查詢,即從單個資料庫表中檢索資料的單條語句。查詢 query 任何sql語句都是查詢。但此術語一般指select語句。sql還允許建立子查詢 subquery 即巢狀在其他查詢中的查詢。說明 mysql支援 如果使用my...