取消
顯示的結果
而不是尋找
你的意思是:

SQL CONCAT返回零

shelms
新的貢獻者二世

別人經曆過這個問題嗎?我試圖SQLconcat兩個字段,如果第二個字段為空,整個字符串顯示為null。預期結果的文檔是不清楚,相反的如何concat_ws運營。

選擇substr(用戶。首先,0,1),用戶。首先,用戶。最後,CONCAT (substr(用戶。首先,0,1)、“用戶。去年)abbr_name從用戶

這是我收到的一個例子。屏幕截圖2022-03-14 4.00.53點

有人有什麼建議關於如何得到我所展示的結果嗎abbr_name沒有被完全零如果沒有姓?

謝謝,

史蒂夫

1接受解決方案

接受的解決方案

User16752245772
貢獻者

嗨@Steve頭盔,

在SQL連接函數有缺點,作為一個解決方案可以使用合並,合並將null值通過包裝與空字符串。

是這樣的:

- - - - -

選擇substr(用戶。首先,0,1),用戶。首先,用戶。最後,CONCAT(合並(substr (user.first 0 1)”),“”,合並(“最後”,”)作為abbr_name從用戶)

- - - - - -

圖像

在原帖子查看解決方案

3回複3

User16752245772
貢獻者

嗨@Steve頭盔,

在SQL連接函數有缺點,作為一個解決方案可以使用合並,合並將null值通過包裝與空字符串。

是這樣的:

- - - - -

選擇substr(用戶。首先,0,1),用戶。首先,用戶。最後,CONCAT(合並(substr (user.first 0 1)”),“”,合並(“最後”,”)作為abbr_name從用戶)

- - - - - -

圖像

BilalAslamDbrx
尊敬的貢獻者二世
尊敬的貢獻者二世

CONCAT函數中定義的SQL標準和可用在各種各樣的DBMS。除了Oracle使用VARCHAR2語義,對零輸入函數返回NULL。

CONCAT_WS()是不標準,主要是由Microsoft SQL Server,推廣和MySQL。兩者都忽略NULL語義。

所以磚僅僅是遵循先例在這兩種情況下。

Kaniz
社區經理
社區經理

嗨@Steve頭盔,你願意和我們分享你是否得到了你的答案,或者你需要更多的幫助嗎?你想馬克最好的答案如果你的問題解決了嗎?

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map