D'après ce que vous avez montré, je suppose que vous avez 4 tables avec une relation un à plusieurs entre Project and Phase
, Phase and Folder
et Folder and Document
.
Votre instruction SQL pourrait alors être aussi simple que de les joindre tous ensemble
SELECT *
FROM Projects p
INNER JOIN Phases ph ON ph.ProjectID = p.ProjectID
INNER JOIN Folders f ON f.PhaseID = ph.PhaseID
INNER JOIN Documents d ON d.FolderID = f.FolderID
Je ne vois vraiment pas encore la nécessité de rendre les choses plus difficiles que nécessaire en ajoutant des CTE