1
Können sagen, ichWählen Sie nur ids mit Tags, die ein Array entspricht genau
id | tags
1 | apples
1 | pears
2 | apples
2 | pears
2 | oranges
3 | apples
3 | pears
3 | oranges
3 | lemons
Ich möchte Abfrage nur für ids, die die Tags haben (‚Äpfel‘, ‚Birnen‘ eine Tabelle mit IDs und Tags, Orangen'). So ist die gewünschte Ausgabe in diesem Fall nur id 2.
Nach der Lektüre ähnliche Beiträge ist, habe ich die folgende Abfrage-Anweisung in mysql versucht:
SELECT
id
FROM table
WHERE tags IN ('apples', 'pears', 'oranges')
GROUP BY id
HAVING COUNT(DISTINCT tags)=3;
Aber das gibt sowohl id 2 & 3 und Ich möchte nur ID 2 in meinem Fall.
Ich denke, in 'MySQL' geschrieben werden kann ->' HAVING COUNT (Tags in (...) = 3 .. "keine Notwendigkeit für" CASE ", aber +1. – sagi
Wird dies funktionieren, wenn eine ID hat zwei Äpfel, eine Birne und und eine Orange? – jarlh
@jarlh, in diesem Fall müssen wir hinzufügen" DISTINCT ". –