Chris: Vereinfachte Subquery

Beitrag lesen

Hallo Vinzenz,

dann erstelle einen Index für id_lists :-)

Oke, das hab ich nun gemacht ;)

SELECT

p.id_products                  -- ich gehe davon aus, dass Du an weiteren
                                   -- Spalten interessiert bist und nicht jeder
                                   -- Eintrag in der Tabelle products einen Eintrag
                                   -- in prod_lists haben muss :-)

Stimmt, das hast du durchschaut. Ich bin mir zudem sicher, dass du weißt, warum ich die Spalten nicht alle gelistet habe ;-)

FROM products p
WHERE p.id_products NOT IN (       -- wobei die id_products nicht in der Liste
    SELECT                         -- der id_products auftaucht
        pl.id_products
    FROM prods_lists pl            -- die in der Verknüpfungstabelle
    WHERE pl.id_lists IN (1, 2, 3) -- einer von ein paar ausgewählten Listen zugeordnet sind
)


>   
> Du hast Dein Subselect viel zu kompliziert aufgebaut :-)  
  
Auweia! Das ist ja wirklich erheblich einfacher. Danke für die Optimierung! :) Was hab ich mir da bloß gedacht...  
  
Leider bringt diese Query immer noch keine Geschwindigkeitsverbesserung mit. Auf meinem 200MHz Pentium dauert das gut 16 Sekunden.  
  
Schöne Grüße  
Christian