Michael: Geschwindigkeit bei NestedSets abfrage

Beitrag lesen

Also ich versuche meine Kategorien über 10.000 an der Zahl meinen Beiträgen zuzuordnen.

Es geht, aber die Perfomence ist unter aller S..

Meine Beiträge sind in der Tabelle beitrag vorhanden, dort gibt es auch die Spalte cat. die wiederrum aus der Tabelle Kategorie die einzelnen Katgorie holt.

Also habe ich es so gelösst (53 Sekunden)

  
SELECT a.titel FROM beitrag a  
WHERE  
kat IN  
(  
SELECT o.id  
FROM  
kategorien AS n,  
kategorien AS p,  
kategorien AS o  
WHERE  
o.lft BETWEEN p.lft AND p.rgt  
AND o.lft BETWEEN n.lft AND n.rgt  
AND n.id = 10  
GROUP BY o.lft  
)  
ORDER BY a.date DESC LIMIT 10

wenn ich aber vorher die Netset abfrage und dann in einem zweiten Anlauf ausgebe:

  
SELECT a.titel FROM beitrag a  
WHERE  
cat IN  
(  
10,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,201,202,203,205,206,207,208,209,210,212,211  
)  
ORDER BY a.date DESC LIMIT 10

sind es nur  0.0030 Sekunden

WO habe ich den meinen Fehler, der das alles so verlangsamt?