複選題

4.哪些屬於 JOIN 的類型?
(A) INNER JOIN
(B) LEFT JOIN
(C) OUTER JOIN
(D) FULL JOIN
(E) CROSS JOIN

答案:登入後查看
統計: A(13), B(20), C(13), D(15), E(13) #3678260

詳解 (共 1 筆)

#7222980

【解題思路】

SQL JOIN 的本質是「把兩張表依照關聯欄位結合在一起」。
最常見的 JOIN 類型包括:

  • INNER JOIN

  • LEFT JOIN(LEFT OUTER JOIN)

  • RIGHT JOIN(RIGHT OUTER JOIN)

  • FULL JOIN(FULL OUTER JOIN)

  • CROSS JOIN(笛卡兒積)

所以題目提供的五個選項,全部都屬於 JOIN 類型。

正確答案:
A、B、C、D、E(全部都是 JOIN 類型)

【逐步講解概念】

JOIN 的目的:
兩張表(或更多)依照某個欄位連接起來。

JOIN 大致分成兩大類:

  1. 等值 / 條件 JOIN(根據鍵結合)

    • INNER JOIN

    • LEFT JOIN

    • RIGHT JOIN

    • FULL JOIN

  2. 無條件 JOIN(所有組合)

    • CROSS JOIN(笛卡兒積)

【選項逐一破題】

(A) INNER JOIN
取兩表「交集」部分(符合條件的記錄)
→ JOIN 類型,一定正確。

(B) LEFT JOIN(LEFT OUTER JOIN)
保留左表全部紀錄,右表 沒資料的地方補 NULL
→ JOIN 類型,正確。

(C) OUTER JOIN(外部 JOIN 的統稱)
一般指包含 LEFT / RIGHT / FULL
→ 雖然 SQL 常用 LEFT / RIGHT / FULL,但 OUTER JOIN 本身仍為 JOIN 類型。
→ 正確。

(D) FULL JOIN(FULL OUTER JOIN)
取左右兩表所有資料,不符合條件的地方以 NULL 補上
→ JOIN 類型,正確。

(E) CROSS JOIN
笛卡兒積(cartesian product),將兩表做「所有組合」
→ JOIN 類型,正確。

【延伸知識】

JOIN 的常見圖形(推爆記憶):

  • INNER JOIN → 交集

  • LEFT JOIN → 左表全 + 右表符合的

  • RIGHT JOIN → 右表全 + 左表符合的

  • FULL JOIN → 左 + 右全部一起

  • CROSS JOIN → 所有排列組合

【記憶技巧】

一句話:

「內交集、左全留、右全留、全全留、笛卡兒都 JOIN。」

或更短版:

「INNER、LEFT、RIGHT、FULL、CROSS → 全部都是 JOIN。」

【常見錯誤】

  1. 誤以為 OUTER JOIN 不是 JOIN 類型
    其實 OUTER JOIN 是 LEFT/RIGHT/FULL 的上位概念。

  2. 忽略 CROSS JOIN
    但 CROSS JOIN 也是正統 JOIN,且用途特殊(例如產生組合)。

  3. 搞不清 FULL JOIN 與 OUTER JOIN 的關係
    FULL JOIN = FULL OUTER JOIN。

【正確答案】

A、B、C、D、E(全部都是 JOIN 類型)

理由:這五個均屬於 SQL JOIN 的分類。

0
0

私人筆記 (共 1 筆)

私人筆記#7747038
未解鎖
SQL  JOIN(合併) 把兩張表...
(共 138 字,隱藏中)
前往觀看
1
0