Wenn Sie wissen möchten, was effektiver ist, sollten Sie versuchen, die geschätzten Abfragepläne oder die tatsächlichen Abfragepläne nach der Ausführung zu betrachten. Es wird Ihnen die Kosten der Abfragen sagen (ich finde CPU und IO Kosten interessant). Ich wäre nicht sehr überrascht, wenn es wenig oder gar keinen Unterschied gäbe, aber man weiß es nie. Ich habe gesehen, dass bestimmte Abfragen mehrere Kerne auf unserem Datenbankserver verwenden, während eine neu geschriebene Version derselben Abfrage nur einen Kern verwendet (die Abfrage, die alle vier Kerne verwendet hat, war natürlich drei mal schneller). Machen Sie sich nie wirklich klar, warum das so ist, aber wenn Sie mit großen Ergebnismengen arbeiten, können solche Unterschiede auftreten, ohne dass Sie davon wissen.
Willst du sagen, dass SELECT 'A' WHERE 'x' NICHT IN (NULL, 'a', 'b') wäre ein leeres Ergebnis zurückgeben? – CJ7
@Craig - Ja genau. –