MS-Access查询以在另一列中收集逗号分隔的结果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MS-Access查询以在另一列中收集逗号分隔的结果相关的知识,希望对你有一定的参考价值。

如果我有一个名为Activities的表:

..和另一个名为Tutors的表:

如果我要在活动表中的LearnerId / InstanceId记录上为教师名称做一个简单的LEFT JOIN,我会得到如下结果:

(以上结果为sql):

SELECT Activities.LearnerId, Activities.InstanceId, 
Activities.LastName, Activities.FirstName, Activities.Activity, 
Tutors.TutorLastName, Tutors.TutorFirstName
FROM Activities 
LEFT JOIN Tutors ON (Activities.InstanceId = Tutors.InstanceId) 
AND (Activities.LearnerId = Tutors.LearnerId);

我希望维护活动表中的记录数(即查询结果为4条记录而不是7条记录)。

我还希望每个与LearnerId / InstanceId记录匹配的导师都收集在另一个名为Tutors(s)的列中,其中相关导师的名字都列在一个字段中,并用逗号分隔每个导师。换句话说,结果如下所示:

...是否可以在SQL中执行此操作,或者只能在VBA中实现?

答案

使用VBA函数很有可能得到你想要的东西。

Allen Browne为此操作编写了详细的代码。它被称为“连接相关记录的值”。浏览一下。 qazxsw poi

以上是关于MS-Access查询以在另一列中收集逗号分隔的结果的主要内容,如果未能解决你的问题,请参考以下文章

excel如何判断某一列内容是不是包含在另一列中

SQL 将 2 个表合并在一列中,以逗号分隔

按列分组以查找另一列中出现频率最高的值? [复制]

TSQL - 如何在另一列中提取具有最小值和最大值的列

在另一列中使用一列中的值

MSSQL查询回显列之间用逗号分隔开怎么操作?