也許我有這個錯誤,但我認爲這個查詢會使用遞歸,但我似乎無法正確寫入它。下面是樣本數據:不正確的遞歸查詢?
DECLARE @Friends TABLE
(
[person_id] [int] NOT NULL,
[first_name] [varchar](50) NOT NULL,
[favorite_color] [varchar](50) NOT NULL,
[best_friend] [varchar](50) NOT NULL
)
INSERT @Friends VALUES (1, 'John', 'blue', 'Mark')
INSERT @Friends VALUES (2, 'Mark', 'green', 'Sally')
INSERT @Friends VALUES (3, 'David', 'purple', 'John')
INSERT @Friends VALUES (4, 'Sally', 'red', 'Rose')
INSERT @Friends VALUES (5, 'Stephanie', 'blue', 'Rose')
INSERT @Friends VALUES (6, 'Rose', 'yellow', 'David')
現在我需要在第一列中列出每個人的名字,那麼他們最好的朋友在第二喜歡的顏色。
我的想法是使用cte,初始化查詢會得到名稱列表,遞歸會得到他們最好的朋友顏色。
但是現在我不確定如何編寫遞歸部分以找到最好的朋友顏色?
不尋找任何人做我的家庭作業,只是試圖走向正確的方向。
TIA
如果這是你所需要的,你不需要使用遞歸。是否使用賦值的遞歸部分? – SWeko
不!我只是想用最好的方法。我可以用一個簡單的子查詢來做到這一點。 – GPGVM