MySQL 的 GROUP BY 子句:组合字符串
MySQL 强大的 GROUP BY
子句不仅限于数值聚合。 它还可以有效地连接与分组数据关联的字符串。这在处理包含共享公共标识符的多行的表时特别有用。
考虑这个示例表:
foo_id | foo_name |
---|---|
1 | A |
1 | B |
2 | C |
我们的目标是将每个独特的 foo_name
的 foo_id
值组合起来,从而产生:
foo_id | foo_name |
---|---|
1 | A, B |
2 | C |
此转换是使用以下 SQL 查询实现的:
<code class="language-sql">SELECT foo_id, GROUP_CONCAT(foo_name SEPARATOR ', ') FROM table GROUP BY foo_id;</code>
查询说明:
GROUP BY foo_id
: 这将根据 foo_id
列对行进行分组,将每个唯一 ID 的所有 foo_name
值汇总在一起。GROUP_CONCAT(foo_name SEPARATOR ', ')
: 此函数使用逗号和空格作为分隔符连接每个组中的 foo_name
值。GROUP_CONCAT()
函数提供 SEPARATOR
参数,允许灵活自定义连接字符串之间的分隔符。详细内容请参考 MySQL 官方文档:https://www.php.cn/link/18fc3b6cc1e55ccea877c161e2e9ba27
以上是MySQL的GROUP BY子句如何连接字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!