1
可以說我有標識和標籤只選擇與匹配的數組正好
id | tags
1 | apples
1 | pears
2 | apples
2 | pears
2 | oranges
3 | apples
3 | pears
3 | oranges
3 | lemons
我要查詢的表只對有標籤的ID標籤(「蘋果」,「梨」的ID,橘子)。 因此,在這種情況下所需的輸出僅僅是ID爲2
閱讀其他類似的帖子後,我曾嘗試在mysql中下面的查詢語句:
SELECT
id
FROM table
WHERE tags IN ('apples', 'pears', 'oranges')
GROUP BY id
HAVING COUNT(DISTINCT tags)=3;
但這同時返回ID 2 & 3,和我只想要id 2在我的情況下。
我認爲'MySQL'可以寫成 - >'HAVING COUNT(標籤(...)= 3 ..''不需要'CASE',但是+1 – sagi
如果一個id有兩個蘋果,一個梨子和一個桔子,這個工作是否會起作用? – jarlh
@jarlh,在這種情況下,我們需要添加'DISTINCT'。 –