Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Perché no Nome colonna non valido Errore XYZ nella sottoquery; sebbene il nome della colonna non sia nella tabella delle sottoquery?

Le sottoquery ereditano le colonne dalle query esterne.

Immagino che il tuo SomeOtherDb.dbo.Customer abbia una colonna CustomerId (che sembra anche probabile dai nomi).

Il che quindi probabilmente significa anche che non stai facendo con la sottoquery ciò che vuoi fare con essa - se la tabella nella sottoquery non ha una colonna CustomerId (e sembra così, altrimenti non ci sarebbero errori durante l'esecuzione della sottoquery in stessa), quindi la sottoquery seleziona e restituisce l'ID cliente esterno e, poiché questa è l'unica colonna nella sottoquery, la sottoquery è inutile.