不好意思說:「是的,我知道我的表格不符合1NF。」 我正在用舊的東西,並且不能改變它。所以請, ,沒有評論。使用空值分割字段
現在,這個問題:
select title,address,zip,city, concat(telefon1,',',telefon2,',',telefon3) as phone
與此問題是,它工作得很好,直到concat
一列的爲空或空。如果是這樣,那麼我得到一個Null
結果爲電話欄。如果三者都有值,則一切按預期工作。
我該如何克服這個問題?
不好意思說:「是的,我知道我的表格不符合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
謝謝你,將在幾分鐘內選擇正確的答案。 即使由於'ifnull'也有效,它比你的解決方案稍慢。 – Dementic
@Dementic:謝謝:) – Marco
+1不知道聚結更快。也很好的格式:) – Bohemian