天天看點

leftjoin多表聯合查詢_多張表的資料查詢與擷取

1. 表的加法

leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取

2. 表的聯結

不同的表通過共有資料進行關聯。

leftjoin多表聯合查詢_多張表的資料查詢與擷取

- 什麼是交叉聯結?(Cross Join)使用率在現實工作運用中較少

交叉聯結的結果兩張表的乘積。

leftjoin多表聯合查詢_多張表的資料查詢與擷取

例:撲克牌(13張牌對應4個花色,去除大小王,總共52張牌)

- 什麼是内聯結? (Inner join)

leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取

- 什麼是左聯結?(left join)

左側的表将會是主表,右表隻選擇與左邊相同的資料

leftjoin多表聯合查詢_多張表的資料查詢與擷取

- 什麼是右聯結?(Right join)

相似于左聯結

leftjoin多表聯合查詢_多張表的資料查詢與擷取

- 什麼是全聯結?(full join)

MySQL不支援全聯結

leftjoin多表聯合查詢_多張表的資料查詢與擷取

3. 多表查詢如何在業務中應用? 常見

面試題!!!
leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取

4. case 表達式

幫助解決複雜查詢問題,等同于條件判斷函數,判斷某行資料是否符合條件。

每行的when将逐行進行直到滿足條件為止,否則直到最後else後結束。

leftjoin多表聯合查詢_多張表的資料查詢與擷取
leftjoin多表聯合查詢_多張表的資料查詢與擷取

Else可不寫表示為空值,End必須寫。

case表達式可以寫到任意SQL表達式中。

leftjoin多表聯合查詢_多張表的資料查詢與擷取

假如課程号和課程名稱不是一對一的關系時,将會改變分組結果。當用多個列來分組時,這幾個列的值全部相同才算一組。

leftjoin多表聯合查詢_多張表的資料查詢與擷取