У меня есть таблица с HierarchyID и вы хотите выбрать родительскую и дочернюю базы для дочернего атрибута.Выберите родителя и ребенка на SQL Server с идентификатором HierarchyID
Вот таблица:
CREATE TABLE #BOMTbl
(
ItemNo HIERARCHYID NOT NULL,
Lvl AS ItemNo.GetLevel() PERSISTED,
MatID VARCHAR(25) NULL,
CONSTRAINT PK_#BOMTbl PRIMARY KEY NONCLUSTERED(ItemNo)
);
insert into #BOMTbl (ItemNo,MatID) values
('/1/',''),
('/1/1/',''),
('/1/1/1/','MA-A'),
('/1/1/2/','MA-A'),
('/1/1/3/','MA-B'),
('/1/2/',''),
('/1/2/1/','MA-B'),
('/1/2/2/','MA-B'),
('/1/3/',''),
('/1/3/1/','PW-A'),
('/1/3/2/','PW-A'),
('/1/4/',''),
('/1/4/1/','PW-B'),
('/1/4/2/','PW-B'),
('/1/5/','0001'),
('/1/6/','0001'),
('/1/7/','0002'),
('/1/8/','0003')
Я хочу, чтобы выбрать таблицу с результатом, как это:
ItemNo ItemID Lvl MatID
0x5AC0 /1/1/ 2
0x5AD6 /1/1/1/ 3 MA-A
0x5ADA /1/1/2/ 3 MA-A
0x5B40 /1/2/ 2
0x5ADE /1/1/3/ 3 MA-B
0x5B56 /1/2/1/ 3 MA-B
0x5B5A /1/2/2/ 3 MA-B
Это результат приходит от всех детей с MatId как 'MA%'? –