0
我想返回一份員工列表,關於他們的各種信息以及一列列出他們每個月以逗號分隔的小時數的前3個項目名單。我有一個select語句成功返回小時,但我不確定如何將其嵌入到select statenet中。以下是select語句。我正在嘗試在SQL Server中執行此操作。逗號分隔列表作爲SQL SELECT結果的一部分
DECLARE @Projects varchar(max)
SELECT Top(3) @Projects = COALESCE(@Projects+', ' ,'') + ltrim(rtrim(Projects.Title))
FROM EmployeeProjectPlanning INNER JOIN
Projects ON EmployeeProjectPlanning.ProjectID = Projects.ProjectID
WHERE (EmployeeProjectPlanning.EmpID = 1) AND (EmployeeProjectPlanning.MonthID = 9) AND (EmployeeProjectPlanning.Year = 2011)
ORDER BY EmployeeProjectPlanning.Hours DESC
SELECT @Projects
請,請,請告訴我們您所使用的SQL產品。 MySQL和SQLite會用GROUP_CONCAT來做到這一點,在SQL Server中,您需要編寫一個標量存儲過程來執行此操作。 –
由語法判斷,它是MS SQL。另外,我發現爲此目的創建一個聚合CLR函數是有用的,如果訪問權限允許的話,它可以模仿MySQL的group_concat。 – AlexanderMP