Torna al Thread
SELECT SAN_CRT_DOCUMENTI.IdTesta, SAN_CRT_DOCUMENTI.IdRiga, SAN_CRT_DOCUMENTI.Posizione,
SAN_CRT_EXTRARIGHEDOC.Colata, SAN_CRT_EXTRARIGHEDOC.Lotto, SAN_CRT_EXTRARIGHEDOC.Protocollo
FROM SAN_CRT_DOCUMENTI LEFT OUTER JOIN SAN_CRT_EXTRARIGHEDOC ON SAN_CRT_DOCUMENTI.IdTesta = SAN_CRT_EXTRARIGHEDOC.IdTesta
AND SAN_CRT_DOCUMENTI.IdRiga = SAN_CRT_EXTRARIGHEDOC.IdRiga AND SAN_CRT_DOCUMENTI.Posizione = SAN_CRT_EXTRARIGHEDOC.Posizione
WHERE SAN_CRT_DOCUMENTI.SessionId = '123456789'
UNION ALL
SELECT E.IdTesta, E.IdRiga, E.Posizione,
E.Colata, E.Lotto, E.Protocollo
FROM SAN_CRT_EXTRARIGHEDOC AS E
WHERE (Cast(E.IdTesta AS varchar)+'.'+Cast(E.IdRiga AS varchar)+'.'+Cast(E.Posizione AS varchar))
NOT IN (SELECT (Cast(D.IdTesta AS varchar)+'.'+Cast(D.IdRiga AS varchar)+'.'+Cast(D.Posizione AS varchar))
FROM SAN_CRT_DOCUMENTI AS D WHERE D.SessionId = '123456789')
AND (Cast(E.IdTesta AS varchar)+'.'+Cast(E.IdRiga AS varchar))
IN (SELECT (Cast(D.IdTesta AS varchar)+'.'+Cast(D.IdRiga AS varchar))
FROM SAN_CRT_DOCUMENTI AS D WHERE D.SessionId = '123456789')
ORDER BY 1, 2, 3