mysql - 如何忽略 group_concat 中的空格
问题描述
有没有办法使用 group_concat 忽略空格,就像 concat_ws 一样?group_concat_ws 似乎不是一件事,即使这个答案建议使用它。
我正在使用这样的东西:
select phone.id,
group_concat(ac.color separator ', ') as 'Available Colors'
from phone_types phone
inner join available_colors ac on phone.id = ac.id
group by phone.id;
我得到这样的结果:
id Available Colors
1 ,
2 red, blue
3 , , green
4
5 ,
6 red
7 ,blue,
8 green,
我试图得到这样的结果:
id Available Colors
1
2 red, blue
3 green
4
5
6 red
7 blue
8 green
解决方案
如果值为 NULL,group_concat 将忽略该字段。您看到空白的原因是因为它们是空字符串。你可以这样做:
group_concat( if(ac.color='',null,ac.color) ) as ...
推荐阅读
- python - 如何询问 python 对象的结构?
- wpf - 基于变换(旋转等)考虑孩子边界框的控制
- javascript - 渲染 ListItem 元素显示空白
- networking - 单实例 OpenStack IP 网络配置
- html - 带网格的联系页面?
- assembly - 汇编(NASM)中关于打印(多位整数)的困惑
- node.js - Axios 得到请求解析后,因此我的变量没有被分配
- c# - 应用查询时,datagridview 中的数据会重复吗?
- javascript - 添加模块会引发 assertionError
- machine-learning - 应用 MCA 等降维方法后如何减少新数据/输入的维度