sql >> Databasteknik >  >> RDS >> Sqlserver

Kan UNION ALL vara snabbare än JOINs eller suger mina JOINs bara?

UNION ALL version skulle troligen ganska lätt bli nöjd med 2 indexsök. OR kan leda till skanningar. Hur ser utförandeplanerna ut?

Har du också provat detta för att slippa komma åt Notes två gånger?

;WITH J AS
(
SELECT UniqueID FROM Leads WHERE LeadID = @LeadID
UNION ALL
SELECT UniqueID FROM Quotes WHERE LeadID = @LeadID
)

SELECT N.*  /*Don't use * though!*/
FROM Notes N  
JOIN J ON N.TargetUniqueID = J.UniqueID  


  1. Välj unika kolumnnamn från en lista med sammanfogade tabeller

  2. Hur förbättrar man prestandan för datetime-filtrering i SQL Server?

  3. Fråga 2 tabeller i en enda fråga

  4. Bestämma datum för påsk för vilket år som helst i Oracle PLSQL