2014-05-06 49 views
0

所以此刻的查詢是:與多個字段組使用DISTINCT甲骨文選擇查詢連接

SELECT 
    i.id, i.name, i.status, i.date_return, 
    a.category, a.year, a.type, 
    c.forename, c.lastname, c.type, c.dob, c.address 
FROM item i 
RIGHT JOIN account a ON a.item_id = i.id 
LEFT JOIN client c ON c.account_id = a.id 
ORDER BY i.date_return 

的問題是我需要返回一個結果集,其中以下列組 是唯一的(我.id),(a.category,a.year)和(c.forename,c.lastname,c.type,c.dob)。

有沒有辦法在Oracle的連接上使用DISTINCT來做到這一點?

+0

'select distinct'做你想要的嗎?如果沒有,請編輯您的問題並顯示樣本數據和期望的結果。 –

回答

0

你是什麼意思的獨特「列組」?如果你想崩潰賬號行與同ITEM_ID類別但不同類型,則不能包括account.type的選擇。 相同客戶端地址,而(假設item.id是一個唯一的關鍵)可以使用項目項目的所有字段。

SELECT DISTINCT 
i.id, i.name, i.status, i.date_return, 
a.category, a.year, 
c.forename, c.lastname, c.type, c.dob 
FROM item i 
RIGHT JOIN account a ON a.item_id = i.id 
LEFT JOIN client c ON c.account_id = a.id 
ORDER BY i.date_return