首页 > 数据库 > mysql教程 > 如何在 MS Access 查询中将多行连接成单个值?

如何在 MS Access 查询中将多行连接成单个值?

Linda Hamilton
发布: 2025-01-07 21:17:44
原创
496 人浏览过

How Can I Concatenate Multiple Rows into a Single Value in an MS Access Query?

在 MS Access 查询中将多行合并为一个值

本指南演示了两种基于共享字段在 MS Access 查询中将多行连接成单个值的方法。 这些方法使用自定义函数或内置聚合函数。

方法一:使用自定义函数(GetList)

此方法需要创建 VBA 函数。 然后查询调用此函数来执行串联。

这是查询结构:

<code class="language-sql">SELECT ColumnA, GetList("SELECT ColumnB FROM Table1 WHERE ColumnA = " & [ColumnA], "", ", ") AS ColumnB
FROM Table1
GROUP BY ColumnA;</code>
登录后复制

GetList 函数(在 VBA 模块中定义)迭代共享相同 ColumnA 值的行,并使用逗号作为分隔符连接它们相应的 ColumnB 值。 您可以轻松更改此分隔符。

方法二:使用内置列表聚合函数

此方法利用内置的 List 函数来实现更简单、无代码的解决方案。

查询是:

<code class="language-sql">SELECT ColumnA, List(ColumnB) AS ColumnB
FROM Table1
GROUP BY ColumnA;</code>
登录后复制

List 函数会自动连接每个唯一 ColumnB 值的 ColumnA 值。 请注意,List 使用的分隔符可能会因您的访问设置而异。

说明性数据和结果

考虑这个示例数据:

ColumnA ColumnB
1 abc
1 pqr
1 xyz
2 efg
2 hij
3 asd

两种方法都会产生以下结果:

ColumnA ColumnB
1 abc, pqr, xyz
2 efg, hij
3 asd

自定义分隔符

调整 GetList 函数参数内的分隔符(方法 1)或可能通过区域设置(方法 2)来使用不同的分隔符(例如分号、空格)。

以上是如何在 MS Access 查询中将多行连接成单个值?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板