Bonjour,
Je voudrais faire une requete recursive sur SQL Server 2005. J'ai donc parcouru le net a la recherche d'exemple et tous les exemples que je trouve (qui semble marcher pour les autres) ne marche pas chez moi.
A chaque fois j'obtiens l'erreur :
voici un exemple de code qui est cense marcher:
Code : Sélectionner tout - Visualiser dans une fenêtre à part Incorrect syntax near the keyword 'WITH'.
si quelqu'un connait le pourquoi du probleme, mes oreilles sont grandes ouvertes
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
18
19
20
21
22
23
24
25
26 CREATE TABLE Nomencl (Précédent char(8) NOT NULL, Code char(8) NOT NULL, PRIMARY KEY (Code) ) ; INSERT INTO Nomencl VALUES ('30', '33') ; INSERT INTO Nomencl VALUES ('36', '30') ; INSERT INTO Nomencl VALUES ('0', '36') ; ----------- Requête récursive ------------------ WITH Recurs (Précédent, Code) AS -- Amoçage de la pompe (SELECT Précédent, Code FROM Nomencl WHERE Précédent = '0' -- point de départ Union ALL -- Récursion (SELECT n.Précédent, n.Code FROM Nomencl AS n, Recurs AS r WHERE n.Précédent = r.Code) ) -- Affichage du résultat SELECT Code, Précédent FROM Recurs ;
Partager