Mysql字串串連函數 CONCAT()與 CONCAT_WS()

來源:互聯網
上載者:User

標籤:

從資料庫裡取N個欄位,然後組合到一起用“,”分割顯示,起初想到用CONCAT()來處理,好是麻煩,沒想到在手冊裡居然有提到 CONCAT_WS(),非常好用。

CONCAT_WS(separator, str1, str2,...)

它是一個特殊形式的 CONCAT()。第一個參數剩餘參數間的分隔字元。分隔字元可以是與剩餘參數一樣的字串。如果分隔字元是 NULL,傳回值也將為 NULL。這個函數會跳過分隔字元參數後的任何 NULL 和Null 字元串。分隔字元將被加到被串連的字串之間

簡單例子如下:

mysql> SELECT CONCAT_WS(",","First name","Second name","Last Name"); -> ‘First name,Second name,Last Name‘ mysql> SELECT CONCAT_WS(",","First name",NULL,"Last Name"); -> ‘First name,Last Name‘

 

 

另外從網上找到如下資料:

mysql CONCAT() 函數用於將多個字串串連成一個字串,是最重要的mysql函數之一,下面就將為您詳細介紹mysql CONCAT()函數,供您參考

mysql CONCAT(str1,str2,…)

返回結果為串連參數產生的字串。如有任何一個參數為NULL ,則傳回值為 NULL。或許有一個或多個參數。 如果所有參數均為非二進位字串,則結果為非二進位字串。 如果自變數中含有任一二進位字串,則結果為一個二進位字串。一個數字參數被轉化為與之相等的二進位字串格式;若要避免這種情況,可使用顯式類型 cast, 例如: SELECT CONCAT(CAST(int_col AS CHAR), char_col)

mysql> SELECT CONCAT(’My’, ‘S’, ‘QL’); -> ‘MySQL’ mysql> SELECT CONCAT(’My’, NULL, ‘QL’); -> NULL mysql> SELECT CONCAT(14.3); -> ‘14.3′

另外一個字串串連函數:

mysql CONCAT_WS(separator,str1,str2,…)

CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。   第一個參數是其它參數的分隔字元。分隔字元的位置放在要串連的兩個字串之間。分隔字元可以是一個字串,也可以是其它參數。如果分隔字元為 NULL,則結果為 NULL。函數會忽略任何分隔字元參數後的 NULL 值。

mysql> SELECT CONCAT_WS(’,‘,’First name’,‘Second name’,‘Last Name’); -> ‘First name,Second name,Last Name’ mysql> SELECT CONCAT_WS(’,‘,’First name’,NULL,’Last Name’); -> ‘First name,Last Name’

mysql CONCAT_WS()不會忽略任何Null 字元串。 (然而會忽略所有的 NULL)。

Mysql字串串連函數 CONCAT()與 CONCAT_WS()

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.