J'ai un problème Je me demandais s'il y avait une solution élégante à. C'est un vrai problème d'affaires et pas une tâche de classe!Déterminer la hiérarchie des enregistrements dans une base de données SQL
J'ai une table avec des milliers d'enregistrements, dont certains sont liés les uns aux autres.
La base de données SQL est 2005.
ID est la clé primaire. Si l'enregistrement a remplacé un enregistrement antérieur, l'ID de cet enregistrement se trouve dans la colonne REP_ID.
ID REP_ID
E D
D B
C B
B A
A NULL
Ainsi, dans cet exemple, A est la ligne originale, B remplacé A, C remplacé B sans succès, D remplacé B avec succès et finalement E remplacé D.
Je voudrais pouvoir afficher tous les enregistrements de cette table dans une grille. Ensuite, je voudrais que l'utilisateur puisse faire un clic droit sur n'importe quel enregistrement dans un groupe , et que le système trouve tous les enregistrements liés et les affiche dans une sorte d'arborescence.
Maintenant, je peux évidemment forcer une solution à cela, mais je voudrais demander à la communauté s'ils peuvent voir une réponse plus élégante.
Peut-être que vous devriez attendre jusqu'à ce que quelqu'un (moi dans ce cas) offre une solution SQL pour recurse la hiérarchie. – gbn