SQL Server 2005 UDFを作成する自己参照テーブルデータのテーブルデータタイプを作成する
-
30-09-2019 - |
質問
従業員の典型的な自己参照表があります。
UDFを構築して、他のクエリで使用してUDFを渡すように結合できるテーブルデータタイプを返すにはどうすればよいですか id
テーブル内のユーザーのうち、そのユーザーの結果を取得します id
そして、すべてのユーザーが彼にリンクしました managerId
?
私が持っているテーブルはです EmployeeId, ManagerID, Name
....
必要なのは、渡すことだけです EmployeeId
そして、すべてのレコードの再帰結果を得る ManagerID
PARAMで渡されたIDであり、これらをマネージャーとして持っているレコードのいずれかなど...
ありがとう
解決
CREATE FUNCTION GetEmployees
(
@EmployeeId int
)
RETURNS TABLE
AS
RETURN
(
WITH yourcte AS
(
SELECT EmployeeId, ManagerID, Name
FROM Employees
WHERE EmployeeId = @EmployeeId
UNION ALL
SELECT e.EmployeeId, e.ManagerID, e.Name
FROM Employees e
JOIN yourcte y ON e.ManagerID = y.EmployeeId
)
SELECT EmployeeId, ManagerID, Name
FROM yourcte
)
所属していません StackOverflow