2013-03-07 36 views
0

我有一張桌子書有isbn和書的名字,我有一個與oisbn(外鍵)和ocid(外鍵,購買此書的人的客戶ID)的表訂單。 AMysql查詢,需要一些幫助。 XOR操作

我想列出那些僅訂購了ocid = 123或ocid = 567的客戶的cids,而不是兩者。有點像XOR。

我如何在mysql中完成此操作?我一直在想很久,我無法弄清楚。

+0

把你的架構與http://sqlfiddle.com樣本數據和期望的輸出,你已經嘗試了什麼。 – 2013-03-07 10:52:43

+1

錯誤,不確定這是否合理。您希望既是客戶123又是客戶567的客戶,但誰不是兩個客戶?您是否在尋找有訂單oisbn 123或oisbn 567的客戶,但不是兩者都有? – Kickstart 2013-03-07 10:57:07

+0

你在mysql中嘗試XOR運算符嗎?解釋它是如何工作的。 – iiro 2013-03-07 10:58:01

回答

4
SELECT 
foo 
FROM 
bar 
WHERE ocid IN (123, 567) 
GROUP BY customerId 
HAVING COUNT(*) = 1