Holen Sie sich ein Alleinerziehendes mit allen Kindern in einer Zeile

Nehmen wir an, ich habe eine Parent-Child-Struktur in SQL eingerichtet (Server 2005):

CREATE TABLE parent (Id INT IDENTITY PRIMARY KEY, Name VARCHAR(255))
CREATE TABLE child (Id INT IDENTITY PRIMARY KEY, parentId INT, Name VARCHAR(255))

insert into parent select 'parent with 1 child'
insert into parent select 'parent with 2 children'

insert into child(name, parentid) select 'single child of parent 1', 1
insert into child(name, parentid) select 'child 1 of 2 of parent 2', 2
insert into child(name, parentid) select 'child 2 of 2 of parent 2', 2

Gibt es eine Möglichkeit, eine Zeile pro übergeordnetem Element mit untergeordneten Elementen als Spalten zurückzugeben? Mögen:

parent.Id, parent.Name, child (1) .Id, child (1) .Name, child (2) .Id, child (2) .Name

Begonnen mit:

select * from parent p
    left outer join child c1 on c1.parentid = p.id

Antworten auf die Frage(5)

Ihre Antwort auf die Frage