根据 MS Access 中的 2 个相邻值连接值
Concatenating values based on 2 adjacent values in MS Access
我有一个 excel sheet,其中 500,000 行导入到 MS Access。它有 3 列,格式如下
Staff Locations Roles
1 Location1 Role1
1 Location2 Role1
2 Location2 Role2
3 Location3 Role3
3 Location3 Role4
我正在尝试获取以下格式的输出
Staff Locations Roles
1 Location1, Location2 Role1
2 Location2 Role2
3 Location3 Role3
3 Location3 Role4
关于我如何在 MS Access 中完成同样的事情有什么建议吗?
提前致谢
我不确定@Bill 提供的代码是如何工作的,因为我没有使用过或测试过它,尽管我使用的代码已被证明对需求更灵活一些。该函数由 Allen Browne 编写,名为 ConcatRelated.
该函数接受三个主要参数,类似于域函数。
- 您尝试 combine/concatenate 的 字段 是您的第一个参数。
- 您要查找的Table是您的第二个参数。
- 分组依据的条件。
还有两个可选参数,您可以在其中说明如何 Order 结果(第四个参数)以及 Separator 您want(第五个参数),默认为comma.
然后可以在查询中使用该函数,例如。
SELECT
Staff,
ConcatRelated("Locations", "yourTableName", "Staff = " & yourTableName.Staff & " AND Roles = '" yourTableName.Roles "'") As NewLocation
Roles
FROM
yourTableName
GROUP BY
Staff,
Roles;
这应该能为您提供正确的信息。
我有一个 excel sheet,其中 500,000 行导入到 MS Access。它有 3 列,格式如下
Staff Locations Roles
1 Location1 Role1
1 Location2 Role1
2 Location2 Role2
3 Location3 Role3
3 Location3 Role4
我正在尝试获取以下格式的输出
Staff Locations Roles
1 Location1, Location2 Role1
2 Location2 Role2
3 Location3 Role3
3 Location3 Role4
关于我如何在 MS Access 中完成同样的事情有什么建议吗?
提前致谢
我不确定@Bill 提供的代码是如何工作的,因为我没有使用过或测试过它,尽管我使用的代码已被证明对需求更灵活一些。该函数由 Allen Browne 编写,名为 ConcatRelated.
该函数接受三个主要参数,类似于域函数。
- 您尝试 combine/concatenate 的 字段 是您的第一个参数。
- 您要查找的Table是您的第二个参数。
- 分组依据的条件。
还有两个可选参数,您可以在其中说明如何 Order 结果(第四个参数)以及 Separator 您want(第五个参数),默认为comma.
然后可以在查询中使用该函数,例如。
SELECT
Staff,
ConcatRelated("Locations", "yourTableName", "Staff = " & yourTableName.Staff & " AND Roles = '" yourTableName.Roles "'") As NewLocation
Roles
FROM
yourTableName
GROUP BY
Staff,
Roles;
这应该能为您提供正确的信息。