如果我有一个名为活动的表格:
..和另一张名为导师的表:
如果我要在活动表中的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中实现?
答案 0 :(得分:0)
使用VBA功能很有可能得到你想要的东西。
Allen Browne为此操作提供了详细记录的代码。它被称为“连接相关记录中的Vale”。浏览一下。 http://allenbrowne.com/func-concat.html