J'ai donc cette table, avec 3 colonnes: ID (clé unique), PositionID et SupervisorID. PositionID et SupervisorID sont les deux clés étrangères d'une table Positions.requête SQL difficile
Ce que je n'ai pas été en mesure de comprendre est une manière décemment agréable d'obtenir hérités subordonnés. Ainsi, par exemple:
IDPositionIDSupervisorID
1 2 1
2 2 3
3 3 4
4 1 5
...
comment pourrais-je choisir 2,3 et 4 en fonction de leur position subordonnée à 1. La solution actuelle est tout à fait une manière désordonnée de le faire, et il semble assez commun d'un problème que peut-être il y a une méthode acceptée.
Merci.
Oui, intuitivement, il ne semblait pas qu'une profondeur illimitée puisse être faite avec SQL direct. C'est dans une procédure stockée. Certaines autres procédures stockées traitant de cette fonctionnalité créent des tables temporaires pendant la procédure (shriek!). –
Vous n'avez pas besoin de tables temporaires. Si vous disposez d'une implémentation SP décente, vous pouvez la coder dans n'importe quelle langue (nous utilisons REXX pour DB2/z) et stocker vos informations intermédiaires en mémoire. – paxdiablo