2016-02-19 57 views
0

我有一個查詢如果某行不過去的一個過濾器

SELECT id, type FROM clients WHERE 1 GROUP BY id, type 

+----+------+ 
| id | type | 
+------+----+ 
| 1 | 1 | 
| 1 | 2 | 
| 1 | 3 | 
| 2 | 2 | 
| 2 | 3 | 
+----+------+ 

可以忽略結果的組,但我想忽略ID爲「1」,因爲這有一個1型,因此,在此情況下,我只是想有id爲 「2」

誰能幫助我,謝謝

+2

你的問題似乎有點含糊措辭給我,和我平時在猜測什麼人正在尋找不錯。 WHERE id <> 1'有什麼問題? _你也有類型2和3(在數據中),所以它聽起來像你不應該有'id' 2 ._ – Uueerdo

回答

0

您可以使用NOT EXISTS

SELECT id, type 
FROM clients AS c1 
WHERE NOT EXISTS (SELECT 1 
        FROM clients AS c2 
        WHERE c1.id = c2.id AND c2.type = 1) 

輸出:

+----+------+ 
| id | type | 
+----+------+ 
| 2 | 2 | 
| 2 | 3 | 
+----+------+ 
+0

是的,這是解決方案,謝謝@GiorgosBetsos – pipook

0

一點點不同的語法:

SELECT distinct id, type 
FROM clients 
WHERE id not in (select distinct id from clients where type=1) 
相關問題