2010-11-11 21 views
0

我無法使用SQL從MSAccess檢索逗號分隔列表。使用SQL Server很容易,我已經在那裏完成了。但MSAccess解決方案似乎沒有我。如何檢索MSAccess的逗號分隔列表SQL

DECLARE @EmployeeList varchar(100) 

SELECT @EmployeeList = COALESCE(@EmployeeList + ', ', '') + 
     CAST(Emp_UniqueID AS varchar(5)) 
FROM SalesCallsEmployees 
WHERE SalCal_UniqueID = 1 

SELECT @EmployeeList 

http://www.sqlteam.com/article/using-coalesce-to-build-comma-delimited-string

有沒有人做到了這一點使用MS Access或我只是註定通過SQL從未得到這樣的名單?

+3

上面的SQL在噴氣/ ACE沒有等價。除了走記錄集和連接字符串之外,Jet/ACE沒有其他選擇。 – 2010-11-11 20:45:06

+1

@ David-W-Fenton我不確定你的意思,因爲我之前回復說有可能使用SELECT Field和「,」,這當然不是上述的等價物,但我不認爲它也可以稱爲「走上記錄集」。 – Fionnuala 2010-11-11 21:41:50

+2

那麼,它不會做什麼要求,不是嗎?您的解決方案只能連接單行內的列,但需要的是不同行中的值的連接(至少,據我瞭解問題和基於COALESCE()的答案)。 – 2010-11-12 18:34:29

回答

1

您可以選擇字段(列)一個接一個:

SELECT ID & ",", Other & "," 
FROM table 
+0

我需要選擇相同的列。所以我做「從類別選擇名稱其中Category.ParentID = 1',不知道這是否適用於該場景。 – 2010-11-11 20:39:28

+0

這將工作正常,where和select是兩個單獨的語句。 – Fionnuala 2010-11-11 20:51:20