我的数据如下:
id name age gender 1 abc M
“年龄”值为空。
我想将列值与分隔符“\n”连接起来,如果某一列值为空,则也使用“\n”来表示它。
我尝试了concat_ws
,但它只返回:
1\nabc\nM
我想要的是:
1\nabc\n\nM
也就是说,'abc' 之后应该有 2 个 '\n'。
如何才能达到我的要求?
最佳答案
您可能应该使用 ifnull(column_name,'') 将空列替换为空字符并尝试 concat_ws。
select concat_ws('\n',id,name,ifnull(age,''),gender) from table1;
SQL fiddle 链接: http://sqlfiddle.com/#!2/12074/10
关于MySQL 选择,用分隔符连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27897199/