In T-SQL cos'è più veloce?Cosa c'è più veloce IN o OR?
DELETE * FROM ... WHERE A IN (x,y,z)
Oppure
DELETE * FROM ... WHERE A = x OR A = y OR A = z
Nel mio caso x, yez sono parametri di input per la procedura memorizzata. E sto cercando di ottenere le prestazioni delle mie istruzioni DELETE e INSERT al meglio delle mie capacità.
Thnx, nel piano di esecuzione ho visto che sarebbe costato esattamente la stessa quantità di tempo CPU. – Zyphrax
Questo non è vero. In non è tradotto come un serise di ors. Faresti meglio a profilare la tua query e vedere effettivamente il risultato. Più spesso di ESISTE è più veloce di IN. Ma OR * dovrebbe * essere più veloce di entrambi. Dipende comunque dagli indici. –
@Frank, stiamo parlando di IN con liste di valori, non di IN con sottoquery. –