通过Access SQL将字段数据连接到字符串中

通过Access SQL将字段数据连接到字符串中,sql,ms-access,Sql,Ms Access,想象一下下表 ID | Name ---------- 1 | Shaun 1 | Terrence 2 | Jessica 我需要根据ID在名称中连接字符串数据 ID | Name ----------- 1 | Shaun, Terrence 2 | Jessica 我正在使用access数据库。我想我可以做一个透视变换,并尝试连接这些字段,但问题是很难动态循环整个字段计数。有什么想法吗 **编辑:顺序不重要,我只想根据ID连接,空格作为分隔符。我使用excel vba中的AD

想象一下下表

ID | Name
----------
1  | Shaun
1  | Terrence
2  | Jessica
我需要根据ID在名称中连接字符串数据

ID | Name
-----------
1  | Shaun, Terrence
2  | Jessica
我正在使用access数据库。我想我可以做一个透视变换,并尝试连接这些字段,但问题是很难动态循环整个字段计数。有什么想法吗


**编辑:顺序不重要,我只想根据ID连接,空格作为分隔符。我使用excel vba中的ADO连接调用此sql代码。

这是我最近尝试透视两列表时遇到的类似问题

“Name”是一个保留字,“ID”通常是一个带有唯一数字的自动索引,所以我分别将您的列更改为UserID和UserName

在单个子查询中创建答案存在一些问题,因此我最终执行了以下操作:

创建带有索引的临时表: 选择t1.UserID,t1.UserName, 选择计数*+1 来自表1 t2 其中t1.UserID=t2.UserID和t2.UserName
也许可以将这些步骤合并到一个查询中,但我还没有找到方法。

顺序重要吗?和特伦斯一样,肖恩也可以吗?如果有10个ID值相同怎么办?是否只想连接具有相同ID的所有名称?请提供更多细节。可能重复的可能重复的,所以埃里克你是对的,这些绝对是适用的链接。问题是它们使用函数,但不幸的是,我正在从ExcelADO连接到access数据库调用此sql代码。我将编辑上面的问题以将其包括在内。您没有回答我之前的问题,即您可能希望基于ID连接多少个值。如果超过2,则需要编写一些VBA代码。感谢您的回答。我正在使用transform处理一个类似的查询,问题的关键在于动态地知道最大列数。考虑到这很可能是不可能的,那么仅仅假设最大金额可能是最好的。