民國108年 第3梯次 電腦軟體應用乙級 學科

第49題

針對結構化查詢語言(SQL)陳述式「SELECT * FROM A LEFT OUTER JOIN B ON A.pk=B.pk 」的 查詢結果,下列敘述何者正…

題目

針對結構化查詢語言(SQL)陳述式「SELECT * FROM A LEFT OUTER JOIN B ON A.pk=B.pk 」的 查詢結果,下列敘述何者正確?

  1. (1) 查詢結果的資料筆數等於A 資料表(Table)的資料筆數與B 資料表的資料筆數兩者之積
  2. (2) 查詢結果的欄位數目與A 資料表(Table)相同
  3. (3) 查詢結果的資料筆數等於 A 資料表(Table)的資料筆數與B 資料表的資料筆數兩者之和
  4. (4) A 資料表(Table)的每一筆資料在查詢結果中,最少會出現一次

官方答案

(4) A 資料表(Table)的每一筆資料在查詢結果中,最少會出現一次

解析

LEFT OUTER JOIN(左外連結)會傳回左表 A 的所有資料列,並將右表 B 中符合 ON 條件(A.pk=B.pk)的資料一併帶出;若 B 無相符記錄,則 B 的欄位以 NULL 補齊。因此 A 資料表的每一筆資料在結果中至少出現一次(選項 4 正確)。選項 1 兩表筆數相乘為 CROSS JOIN 結果;選項 2 結果欄位數為 A、B 兩表欄位數之和,而非與 A 相同;選項 3 兩表筆數之和亦非左外連結之筆數。故正確為選項 4。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料