Ich habe eine Baumstruktur in einzelne Tabelle und Element Beziehungen in einer anderen Tabelle. Ich muss alle Eltern von den gegebenen Einzelteilen herausfinden.Suchen Sie alle übergeordneten IDs in Baum in SQL Server
SELECT Id FROM dbo.Items WHERE Selected = 1
Da ich 6,9 bekommen, 11 aus dieser Abfrage, würde ich brauche übergeordnete Element IDs von denen zurückkehren, die 7, 5, 2.
Ich glaube, ich sollte Verwenden Sie eine Art rekursive CTE dafür, aber ich bin mir nicht sicher, wo ich anfangen soll.
Können Sie mir helfen? Vielen Dank!
dbo.Relationship
Id ParentId
3 6
6 7
8 7
7 2
4 9
9 5
5 2
dbo.Items
Id Selected
2 0
3 0
4 0
5 0
6 1
7 0
8 0
9 1
11 1
Das ist genau das, was ich zurückkehren will, aber können Sie mir sagen, wie ich die ganzen ersetzen kann „SELECT {Nummer}, {Nummer} UNION“ Aussagen mit einfachen SELECT Id, ausgewählt aus Artikel. Vielleicht ist das eine dumme Frage. – Pegaz
@Pegaz Sie können die Beziehung und die Items mit Anweisung ignorieren. Sie gleicht nur einer temporären Tabelle, Sie ersetzen sie einfach durch Ihren Tabellennamen in der CTE-Unteranweisung. –
Ah Ok, danke! :) – Pegaz