1. 程式人生 > >mysql必知必會--學習筆記(8)--子查詢 where巢狀查詢語句,作為計算欄位使用子查詢

mysql必知必會--學習筆記(8)--子查詢 where巢狀查詢語句,作為計算欄位使用子查詢

1、子查詢的查詢過程一般是通過where中的in操作符來完成,in後面跟上一個子查詢,通常in之前的列名

和子查詢查詢出來的列名是一致的。例如

select name from book where id in (select book_id from store where store.name = '新華';

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

3、使用計算欄位的子查詢,

SELECT cust_name,
       cust_state,
       (SELECT COUNT(*)
        FROM orders
        WHERE orders.cust_id = customers.cust_id) as orders
FROM customers
order by cust_name;
這裡的orders作為一個新的欄位來代替子查詢中的count(*)。