отображение столбца на основе значения другого столбца - PullRequest
0 голосов
/ 12 апреля 2011

Вот такая таблица:

Parent | Child
1      | 11
11     | 12
11     | 13
12     | 14
12     | 14

Если пройти 1, он должен вернуть все «1» детей: 11, 12, 13, 14

Ответы [ 2 ]

2 голосов
/ 12 апреля 2011

Вы можете взглянуть на рекурсивные запросы, используя CTE. Ссылки по теме:

0 голосов
/ 12 апреля 2011
-- Test data
declare @T table (ParentID int, ChildID int)
insert into @T values(1,       11)
insert into @T values(11,      12)
insert into @T values(11,      13)
insert into @T values(12,      14)
insert into @T values(12,      14)

-- ID to search for
declare @ParentID int = 1

-- Recorsive cte
;with cte as
(
  select T.*
  from @T as T
  where T.ParentID = @ParentID
  union all
  select T.*
  from cte as C
    inner join @T as T
      on C.ChildID = T.ParentID
)
select distinct ChildID
from cte  

Результат

ChildID
-------
11
12
13
14
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...