現在我覺得非常非常愚蠢,因爲我有一個問題,似乎無法弄清楚。找不到一個簡單的mysql查詢
很簡單的MySQL表2列:
ID1 | ID2
1 | 1
1 | 2
2 | 1
不知道很好如何解釋的條件:我想從列ID1選擇值1,因爲它與值1連接AND 2來自ID2。
這與IN有些相反。
如果我讓 SELECT ID1 FROM X WHERE ID2 IN (1,2)
我收到1和2,因爲它是團聚。我想要一個十字路口,就像SELECT ID1 FROM X WHERE ID2 IN BOTH 1 AND 2
。
我相當確信它與分組有關。
1解決方案是讓
SELECT * FROM
(SELECT ID1, GROUP_COCAT(ID2) y
FROM X
GROUP BY ID1)t
WHERE t.y = '1,2'
但是這也不行,因爲我不知道訂單(1,2或2,1),我可以有更多的價值。
希望這很清楚,我很累。
ID2只包含1和2? – Sadikhasan
這只是一個小例子,它將包含更多的值。因爲它可以包含1,2,3,4,如果我搜索1,2我想收到它作爲好結果。 – Cosmin
你能否讓這個問題變得更加模糊?這就是說,我懷疑你正在尋找以下... SELECT a。* FROM a WHERE a.y IN(1,2)GROUP BY a.x HAVING COUNT(*)= 2; – Strawberry