In questa pagina
Messaggio
Codice: 116
Messaggio in italiano: Se una sottoquery non è introdotta da EXISTS, nell’elenco di selezione è possibile specificare una sola espressione.
Messaggio in inglese: Only one expression can be specified in the select list when the subquery is not introduced with EXISTS.
Spiegazione
Quando si usa una subquery in un elenco di selezione, questa deve restituire solo un campo con una riga (cioè un valore scalare).
Esempio:
SELECT (SELECT TOP 1 Campo1, Campo2 FROM TABELLA)
questa query restituisce due campi nella subquery, che è utilizzata come se fosse il valore di un campo.
Causa
Si è inserita nell’elenco di campi della SELECT una subquery che restituisce più di un campo, e questo non è possibile.
Soluzione
Rimuovere tutti i campi della subquery tranne uno.
Nota: a meno che la subquery non sia estremamente banale, con questa sintassi è possibile degradare molto velocemente le prestazioni della query.