【发布时间】:2021-08-27 16:35:53
【问题描述】:
我有一个classstructure 表:
create table classstructure (classstructureid int, classificationid varchar(25), parent int);
insert into classstructure(classstructureid, classificationid, parent) values(1001, 'FLEET', null);
insert into classstructure(classstructureid, classificationid, parent) values(1002, 'LIGHTDUTYVEHICLE', 1001);
insert into classstructure(classstructureid, classificationid, parent) values(1004, 'MEDIUMDUTYVEHICLE', 1001);
insert into classstructure(classstructureid, classificationid, parent) values(1022, 'ACTIVETRANSPORTATION', null);
insert into classstructure(classstructureid, classificationid, parent) values(1023, 'FACILITYWALKWAY', 1022);
insert into classstructure(classstructureid, classificationid, parent) values(1024, 'TRAIL', 1022);
insert into classstructure(classstructureid, classificationid, parent) values(1085, 'SIDEWALK', 1022);
insert into classstructure(classstructureid, classificationid, parent) values(1091, 'SDWRAMP', 1085);
CLASSSTRUCTUREID CLASSIFICATIONID PARENT
---------------- ------------------------- ----------
1001 FLEET
1002 LIGHTDUTYVEHICLE 1001
1004 MEDIUMDUTYVEHICLE 1001
1022 ACTIVETRANSPORTATION
1023 FACILITYWALKWAY 1022
1024 TRAIL 1022
1085 SIDEWALK 1022
1091 SDWRAMP 1085
我想创建一个将记录折叠到层次结构路径的查询:
HIERARCHYPATH
---------------------------
FLEET
FLEET \ LIGHTDUTYVEHICLE
FLEET \ MEDIUMDUTYVEHICLE
ACTIVETRANSPORTATION
ACTIVETRANSPORTATION \ FACILITYWALKWAY
ACTIVETRANSPORTATION \ TRAIL
ACTIVETRANSPORTATION \ SIDEWALK
ACTIVETRANSPORTATION \ SIDEWALK \ SDWRAMP
如何使用 SQL 做到这一点?
【问题讨论】:
标签: sql-server parent-child hierarchical-data sql-server-2019