问题复现
这里以一个例子进行说明:
需求:一个员工每月是否完成了打卡,要求统计员工当月完成和未完成日期,展示结果如下:
测试的数据库表字段如下:
测试数据如下:
View Code
这种情况下,我们一般可以将所有的情况查询出来(这里以6月份数据为例),查询SQL如下:
这样查询的结果如下:
这种显然不满足要求,针对这种情况,要怎么做呢?
2、问题解决
这时候需要使用 GROUP_CONCAT() 函数解决此问题。
说明:
则此处对应的SQL语句如下,仅供参考!
3、内容扩展
3.1 CONCAT()
示例:
3.2 CONCAT_WS()
此种连接字符串的方法,从名字上就能看出:从concat with separator,使用分隔符连接字符串。
示例1:
示例2:
3.3 GROUP_CONCAT()
此种连接方法,主要是将某一字段的值连接成一行进行显示,具体可以参看上面的问题实例。