2012-02-17 71 views
1

我一直在對着我的鍵盤敲打我的頭,試圖讓它工作。這是我簡單的兩頁的表(名爲「test」)的外觀:使用Oracle的SQL選擇

part_id cust_id 


1..........1 

1..........1 

2..........2 

3..........3 

我需要寫一個select語句,將列出所有的cust_id下令相同PART_ID一次,並且還列出了PART_ID。到目前爲止,我能夠最近的是:

SELECT cust_id, COUNT(part_id) 
FROM TEST 
GROUP BY cust_id 
HAVING COUNT(part_id) > 1; 

這隻告訴我有多少客戶訂購更多的一部分。同樣的part_id是這裏的關鍵。任何提示將非常感謝!

+0

鑑於您的示例表,您不應該使用'cust_id'而不是'customer_id'嗎?否則,查詢看起來很好。 – 2012-02-17 14:40:07

回答

2

你很親密。只需在SELECT和GROUP BY中包含part_id即可。

SELECT cust_id, part_id 
FROM TEST 
GROUP BY cust_id, part_id 
HAVING COUNT(*) > 1; 
+0

就是這樣!非常感謝!整個下午這讓我瘋狂。你剛剛從一個不眠之夜救了我:) – James 2012-02-17 14:51:42