Je possède ce sous-requête:Pourquoi ne puis-je pas accéder à un champ défini comme "Select 1" à partir d'une sous-requête dans la requête externe?
LEFT JOIN (SELECT 1 as exist
, MAX (ev.EventDate) as eventdate
, evt.EventCode
, CCaseID
FROM stg.Event ev
JOIN stg.EventTemplate evt
ON ev.EventTemplateID = evt.ID
WHERE evt.EventCode = 'UN002'
Group by CCaseID, evt.EventCode) as un002
ON un002.CCaseID = ev.CCaseID
WHERE evt.EventCode = 'UN001'
AND (un002.eventdate < ev.eventdate OR un002.eventdate IS NULL)
Group by ev.CCaseID, evt.EventCode) as un001
ON cc.ID = un001.CCaseID
Je suis en train d'accéder maintenant le champ exist dans la requête externe comme par un001.exist
mais SQL Server me dit qu'il est un champ non valide. Qu'est-ce que je rate?
Si la colonne est appelée 1, juste essayer de bracketing le numéro [1] avec des crochets comme indiqué. – russ
Demandez-vous pourquoi vous ne pouvez pas accéder à la colonne "exister" dans votre requête principale? –
Bien .... un001.exist n'est pas une colonne valide. Vous avez nommé cette sous-requête comme un002. Ce serait plus facile pour vous de voir s'il y avait un meilleur formatage. –