Le seguenti tre query di selezione, indipendentemente dalla clausola Where che contiene uno spazio aggiuntivo tra l'alias di tabella e il nome della colonna, producono lo stesso risultato. Hanno tutti gli stessi piani di esecuzione. Perché la presenza di uno spazio non genera un errore di sintassi?Perché lo spazio in questa clausola Where non causa un errore di sintassi?
DECLARE @TblX TABLE(
ColX int
,ColY float
)
-----As it normally should be
SELECT *
FROM @TblX X
WHERE X.ColX = 1
----Even this works
SELECT *
FROM @TblX X
WHERE X .ColX = 1
----And this too
SELECT *
FROM @TblX X
WHERE X. ColX = 1
direi, sono la stessa query, o intendi perché la query è stata eseguita senza alcuna tupla? –
Perché non dovrebbe essere legale? Funziona anche in Python. – Kevin