Par exemple, j'ai ce tableau:Comment créer une sélection simple pour un tableau référentiel?
CREATE TABLE perarea
(
id_area INT primary key,
nombre VARCHAR2(200),
id_areapadre INT references perarea(id_area)
);
Au lieu de montrer:
1 IT null
2 Recursos Humanos null
3 Contabilidad 2
4 Legal 2
Je veux:
1 IT
2 Recursos Humanos
3 Contabilidad Recursos Humanos
4 Legal Recursos Humanos
Toute aide?
Je ne peux pas pour la vie de moi comprendre comment ce select serait.
Edit:
Cela fonctionne de requêtes SQL, mais ne tire pas le nom, seul l'ID du parent. De l'aide?
select * from PerArea
connect by id_area = id_areapadre;
double possible de [requête hiérarchique] (http://stackoverflow.com/questions/1443860/hierarchical-query) – APC
Oracle a sa propre syntaxe pour le traitement des requêtes hiérarchiques, qui n'est pas intuitif: CONNECT BY. La question que j'ai suggérée en tant que doublon devrait vous l'expliquer. – APC
@APC: 11g n'a pas ajouté l'affacturage sous-requête récursif (AKA CTE)? –