Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

O identificador de várias partes não pôde ser vinculado - SubQuery


Você não pode acessar um alias de uma associação dentro de outra subconsulta associada. Você precisará usar o seguinte que une a subconsulta em duas colunas/tabelas:
SELECT * 
FROM TableA a
INNER JOIN TableB b 
  ON b.B1=a.A1
INNER JOIN 
(
  SELECT * 
  FROM TableC c
) d 
  ON d.C2=b.B2
  AND d.C1 = b.B1

Ou isso pode ser escrito como:
SELECT * 
FROM TableA a
INNER JOIN TableB b 
  ON b.B1=a.A1
INNER JOIN TableC c
  ON c.C2=b.B2
  AND c.C1 = b.B1