我有一個表格,賬戶信息包含在。so賬號中,然後是一個動作代碼等。每個賬戶在賦予多行時可以有許多動作代碼。我想選擇其歷史記錄中沒有特定代碼的帳戶。每個賬戶有多行的SQL表格
例如:如果代碼CODE001是針對帳戶1234,那麼我不想爲該帳戶返回記錄。我知道我在這裏很厚!
感謝
我有一個表格,賬戶信息包含在。so賬號中,然後是一個動作代碼等。每個賬戶在賦予多行時可以有許多動作代碼。我想選擇其歷史記錄中沒有特定代碼的帳戶。每個賬戶有多行的SQL表格
例如:如果代碼CODE001是針對帳戶1234,那麼我不想爲該帳戶返回記錄。我知道我在這裏很厚!
感謝
我想你有2個表:1個表帳戶信息和1個表帳戶ID和actionCode?
如果是這樣,讓所有不在內部的選擇結果的帳戶:
SELECT * FROM accountTable WHERE accountID NOT IN (SELECT DISTINCT accountID FROM account_actionCode WHERE actionCode = 'CODE001')
是的!我應該今天呆在家裏!謝謝Ben!我將在一天剩下的時間裏戴上帽子。 – GPH
試試這個:
SELECT * FROM accounts WHERE ID NOT IN
(SELECT DISTINCT(ID) FROM accounts WHERE Code='CODE001')
斯諾這是不可能的(因爲MySQL是跑直線數據庫因爲它對每個條目都有行和列)......但你可以查找面向對象的數據庫。
這樣做是使用兩個數據庫的更好的辦法:
一個用於賬戶,而另一個用於ActionCodes ..
邏輯可以推斷爲
Select Acc from Accounts :
where there does not exist a entry in ActionCodes for account Acc
SELECT * FROM accounts WHERE acc NOT IN (SELECT DISTINCT ac FROM ActionCode WHERE actionCode = 'actioncode')
一個sugesstion爲將來發布添加您的表架構或使用http://sqlfiddle.com/#!3以更好地瞭解讀者 –