Welche dieser Abfragen ist die schnellere?
NICHT EXISTIERT:
SELECT ProductID, ProductName
FROM Northwind..Products p
WHERE NOT EXISTS (
SELECT 1
FROM Northwind..[Order Details] od
WHERE p.ProductId = od.ProductId)
Oder NICHT IN:
SELECT ProductID, ProductName
FROM Northwind..Products p
WHERE p.ProductID NOT IN (
SELECT ProductID
FROM Northwind..[Order Details])
Der Ausführungsplan der Abfrage besagt, dass beide das Gleiche tun. Wenn das der Fall ist, welche Form ist dann die empfohlene?
Grundlage hierfür ist die NorthWind-Datenbank.
[Bearbeiten]
Ich habe gerade diesen hilfreichen Artikel gefunden: http://weblogs.sqlteam.com/mladenp/archive/2007/05/18/60210.aspx
Ich glaube, ich bleibe bei NOT EXISTS.