DRVTBL
, à partir de la requête que vous avez publiée, ressemble à un alias. Le travail comme des tables temporaires dans votre requête T-SQL. SQL Server 2005 dispose d'une version légèrement avancée de cette fonctionnalité, appelée Common Table Expressions.
Un exemple -
SELECT *
FROM
(
SELECT
Id,
Name
FROM Employee
WHERE Name LIKE 'A%'
) EmployeeA
WHERE EmployeeA.Name = 'Albert'
Cela va créer une table contenant tous les crénelage Employee
s dont le nom commence par A
, et la requête externe, à son tour, sélectionnez les employés avec le nom Albert
.
La même chose peut être écrit en utilisant CTE comme -
WITH EmployeeA AS
(
SELECT
Id,
Name
FROM Employee
WHERE Name LIKE 'A%'
)
SELECT * FROM EmployeeA WHERE EmployeeA.Name = 'Albert'
@Frederik Gheysels, merci pour la réponse rapide. ce DRVTBL n'apparaît nulle part ailleurs dans le SP. – avnic
Lorsque vous supprimez l'alias, il est possible que vous receviez une erreur de syntaxe et que SQL Server ne puisse pas exécuter la requête. Vous pouvez cependant changer le nom de l'alias en un nom plus approprié. –