Mysql常用sql語句(20)- 子查詢重點知識

小菠蘿測試筆記發表於2020-05-14

測試必備的Mysql常用sql語句系列

https://www.cnblogs.com/poloyy/category/1683347.html

 

子查詢語句可以巢狀在 sql 語句中任何表示式出現的位置

啥意思??

查詢sql 語句的組成一般是這樣

select <欄位> from <表名> where <查詢條件>

欄位、表名、查詢條件都可以巢狀子查詢!

select <子查詢> from <表名> where <查詢條件>
select <欄位> from <子查詢> as <別名> where <查詢條件>
select <欄位> from <表名> where <子查詢>

常見錯誤寫法

select * from (select * from emp);

這樣寫是會報錯的,因為沒有給子查詢指定別名

正確寫法

select * from (select * from emp) as t;

注意點

如果<表名>巢狀的是子查詢,必須給表指定別名,一般會返回多行多列的結果集,當做一張新的臨時表

 

只出現在子查詢中而沒有出現在父查詢中的表不能包含在輸出列中

  • 多層巢狀子查詢的最終結果集只包含父查詢(最外層的查詢)的select 語句中出現的欄位
  • 子查詢的結果集通常會作為其外層查詢的資料來源或用於條件判斷

 

相關文章