开始说“是的,我知道我的桌子不符合1NF。” 我正在处理一些旧的东西,而且无法改变它。 所以,请不要对此发表评论。
现在,问题是:
select title,address,zip,city, concat(telefon1,',',telefon2,',',telefon3) as phone
这个问题是,它可以正常工作,直到concat
中的一列为空或空。
如果是,那么我得到电话栏的Null
结果。
如果所有三个都有值,那么一切都按预期工作。
我怎样才能克服这个问题?
答案 0 :(得分:4)
试试这个:
SELECT title,address,zip,city,CONCAT(
COALESCE(telefon1,''), ',',
COALESCE(telefon2,''), ',',
COALESCE(telefon3,'')) as phone
答案 1 :(得分:1)
将ifnull(...,'')
中的每个电话栏包裹起来,将null
变为空白。
select ...,
concat(ifnull(telefon1,''),',',ifnull(telefon2,''),',',ifnull(telefon3,'')) as phone