LONGEPASS
電腦軟體應用/電腦概論/Q136
簡單
正確率 -
Q136.

如果A 資料表(Table)有N 筆資料、X 個欄位;資料表B 有M 筆資料、Y 個欄位,則針對結構化查詢語言(SQL)陳述式「SELECT * FROM A CROSS JOIN B」查詢結果的欄位數目為

電腦軟體應用 · 乙級 · 電腦概論 · Q136

難易度分析

2 / 5

本題考查對資料表連接後結果集結構的定義理解。由於選項中包含了資料列數與欄位數的不同計算方式,考生必須能精確區分兩者的差異,避免將笛卡兒積的列數計算邏輯誤用於欄位數的判定。

正確答案:④X+Y

④ X+Y:X+Y 為正確答案。CROSS JOIN 會將資料表 A 的 X 個欄位 與資料表 B 的 Y 個欄位 全部合併輸出,因此結果集的欄位總數為 X+Y。

錯誤選項解析

  • ① N×M:N×M 是 CROSS JOIN(卡氏積) 查詢結果的資料列數目,而非欄位數目。當資料表 A 有 N 筆、資料表 B 有 M 筆時,交叉連接會產生 N×M 筆資料列。
  • ② X×Y:X×Y 為錯誤算法。SQL 的 JOIN 操作 不會將兩表的欄位數相乘,欄位是進行集合聯集而非笛卡兒積運算。
  • ③ N+M:N+M 是錯誤的資料列計算方式。CROSS JOIN 的資料列數為 N×M(相乘),而非相加;相加僅適用於 UNION 或 UNION ALL 操作。
Learning Tip

"本題核心考點為 SQL JOIN 操作的欄位與資料列計算規則。CROSS JOIN(卡氏積) 的結果集結構為:資料列數 = N×M、欄位數 = X+Y。常考陷阱是混淆「資料列數」與「欄位數」的計算方式,需特別注意 INNER JOIN、LEFT JOIN 的欄位數同樣為 X+Y,但資料列數會因 ON 條件 而不同。實務上應避免對大資料表使用 CROSS JOIN,以免產生龐大的笛卡兒積造成效能問題。"

學員答題分佈

①N×M0%
②X×Y0%
③N+M0%
④X+Y0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目