Salut à tous,

J'ai un petit soucis pour transposer une view écrite sous SQL Server, vers un Oracle 9i.

Cette fameuse requête, se présente comme ceci sous SQL Server:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
SELECT * FROM
([Requête]) t1
	LEFT OUTER JOIN t2 ON t2.[UserID] = t1.[UserID]
		AND t2.[FileID] = t1.[ID]
			LEFT OUTER JOIN t3 ON t1.[ID] = t3.[FileID]
				AND t3.[ClientGuid] = t2.[ClientGuid]
					INNER JOIN t4 ON t4.[ID] = t1.[ID]
 
WHERE (t2.[StatDate] =	(	SELECT MAX(StatDate)
				FROM [BLUP_DLStats]
				WHERE [UserID] = t1.[UserID]
					AND [FileID] = t1.[ID]
			)
	) OR
	(t2.[StatDate] IS NULL)
GO
J'ai essayé de transposer celà en Oracle comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
SELECT * FROM
([Requête]) T1, T2, T3, T4
WHERE T1."UserID" = T2."UserID"(+)
	AND T1."ID" = T2."FileID"(+)
		AND T1."ID" = T3."FileID"(+)
			AND T2."ClientGuid" = T3."ClientGuid"(+)
				AND T1."ID" = T4."ID"
J'obtiens alors une erreur ORA-01417

Auriez-vous une solution pour faire passer ce "multiple left outer join" ?

Merci d'avance.