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