題組內容
二、【圖1】為某公司的顧客交易資料庫架構,請使用SQL 語法回答下列查詢。
(三) 請列出產品ID為P0001與P0002的產品,曾經一起被購買的次數。(5分)
詳解 (共 2 筆)
詳解
最佳解答案有問題,原因出在產品ID='P0001' AND 'P0002'
不可能有一個ID叫P0001同時又叫P0002的情況
所以SQL語法要做修正
以下是我的答案,如有問題,請不吝指教
SELECT COUNT(*) FROM 交易紀錄 WHERE 交易序號 IN(
SELECT A.交易序號 FROM 交易明細 A 交易明細 B
WHERE A.產品ID= 'P0001' and B.產品ID='P0002'
AND A.明細流水號=B.明細流水號);
同樣是交易明細會分成 交易明細 A 交易明細 B
用意在於單獨購買P0001的明細流水號不會等於單獨購買P0002的明細流水號
那甚麼情況下會相同,就是同時購買P0001及P0002的情況下
所以才會同樣的表分成兩張去做JOIN
詳解
為什麼前面是 From 交易紀錄 不是 From 交易明細 ?