kleinerheiner: self-join frage

Beitrag lesen

hallo und ein frohes neues jahr!

ich habe eine tabelle mit zwei spalten "id" und "inhalt". es sollen alle "ids" generiert werden, die den "inhalt" A,B und C beinhalten. wie verknüpfe ich am besten die self-joins (mit left join...?)?

id inhalt
1 A
1 C
2 A
2 B
2 C
3 B

vorschlag:

SELECT DISTINCT(t1.id) FROM tabelle AS t1
join tabelle AS t2 on t1.id = t2.id
join tabelle AS t3 on t2.id = t3.id
WHERE t1.inhalt = "A" AND t2.inhalt = "B" AND t3.inhalt = "C" AND

mich irritiert, das je nach dem wie ich die reihenfolge der WHERE-bedingungen gestalte, die abfragezeit ganz stark schwankt, z.b. dauert "WHERE A AND B AND C" viel länger als "WHERE A AND C AND B" usw.

warum?

gruß
heiner