Tuesday, August 02, 2005

SQL query optimization - Instead of NOT IN

You would have come across a situation to use NOT IN (Subquery) but this would be an overhead, instead u could use NOT EXISTS which is more optimized.

Instead of

SELECT * FROM Orders WHERE Orders.OrderId NOT IN (SELECT OrderId FROM SalesDetails)

Use

SELECT * FROM Orders WHERE NOT EXISTS (SELECT 1 FROM SalesDetails WHERE SalesDetails.OrderId = Orders.OrderId)

No comments: