mi sono imbattuto in questa domanda:Will "Dove 0 = 1" analizzare tabella completa o solo tornare nomi delle colonne
voglio chiedere se uso la query
SELECT * FROM table WHERE 0=1
o
SELECT TOP 0 * FROM table
restituirà immediatamente solo i nomi delle colonne o continuerà a analizzare l'intera tabella e alla fine restituisce zero risultati?
Ho una tabella di produzione con 10.000 righe: controllerà la condizione WHERE
su ogni riga?
L'ottimizzatore di query SQL Server è abbastanza intelligente per capire che 'dove 0 = 1' può *** *** mai e poi mai essere vero e quindi non preoccuparsi di verificare tutte le righe - inutile .... –
e altri server come oracle sono troppo intelligenti? – Friendy
La maggior parte di loro, se non tutti, probabilmente sono ... –