A titre d’exemple, nous pouvons utiliser une requête récursive pour éviter l’appel coûteux à des curseurs ou plusieurs procédures stockées. Pour créer une requête récursive nous allons utiliser une expression de table commune (CTE, Common Table Expression). Dans cet exemple le but est de sortir la hiérarchie de la société
VI. Utiliser le plus possible les possibilités du Transact-SQL

AdventureWorks (base classique d’exemple de SQL Server)
Declare @EmpID Integer;
Select @EmpID = EmployeeID From HumanResources.Employee Where ManagerID is null;
— declaré une CTE appelée Emp
With Emp ( LoginID, EmployeeID, NomManager, ManagerID, ReportsToManagerID) As (
Select E1.LoginID, E1.EmployeeID, E2.LoginID, E2.EmployeeID,
( Select ManagerID From HumanResources.Employee E3 Where E3.EmployeeID = E2.EmployeeID ) AS ManagerID
From HumanResources.Employee E1
Join Humanresources.Employee E2
On E1.Managerid = E2.Employeeid
And E1.Managerid = @Empid
Union All
Select E1.LoginID, E1.EmployeeID, E2.LoginID, E2.EmployeeID,
( Select ManagerID From HumanResources.Employee E3 Where E3.EmployeeID = E2.EmployeeID ) AS ManagerID >
From HumanResources.Employee E1
Join Emp E2 — Appeler EMP récursivement
On E1.ManagerID = E2.EmployeeID
)
Select Substring (LoginID, Charindex(‘\’,LoginID)+1,len(LoginID)-Charindex(‘\’, LoginID)-1) , EmployeeID,
Substring (NomManager, Charindex(‘\’,NomManager)+1,len(NomManager)-Charindex(‘\’, NomManager)-1), ManagerID, ReportsToManagerID From Emp Order By ReportsToManagerID
L’utilisation de cette requête permet d’utiliser au maximum les possibilités du serveur et de limiter les transferts sur le réseau.
Téléchargez cette ressource

EDI : Pratiques de Performance Opérationnelle
Comment mieux satisfaire les directions métiers, rationaliser les échanges, améliorer la qualité des données et gérer l’obsolescence ? Découvrez dans ce livre blanc, les principaux enjeux autour de l’échange de données informatisé, les technologies complémentaires à l’EDI pour gagner en efficacité et les innovations d’offres de services fournis par Generix Group pour digitaliser vos processus.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Vidéo « Accessibilité numérique » chez Microsoft
- Asklépian : des tests d’intrusion à 360° grâce à l’IA pour lutter contre les failles de sécurité
- Padok « faire du Cloud et de l’infrastructure, un véritable accélérateur business »
- Le numérique responsable
- Delinea : la réponse aux exigences d’accès des entreprises hybrides modernes
