Mysql中的concat函數(shù)(拼接函數(shù))詳解
Mysql中的concat函數(shù)(拼接函數(shù))
概述
很多時候,我們需要將不同地方獲得的字符串拼接在一起,此時就需要使用CONCAT和CONCAT_WS函數(shù)
要連接兩個或多個引用的字符串值,請將字符串放在一起,如下所示:
mysql> SELECT 'MySQL ' 'String ' 'Concatenation'; +----------------------------+ | MySQL | +----------------------------+ | MySQL String Concatenation | +----------------------------+ 1 row in set
除了使用空格進行字符串連接之外,mysql還提供了兩個連接字符串值的函數(shù)CONCAT和CONCAT_WS
Mysql Concat函數(shù)
Mysql Concat函數(shù)需要一個或多個字符串參數(shù),并將他們連接成一個字符串。CONCAT() 函數(shù)需要至少一個參數(shù),否則會引起報錯。
CONCAT(string1,string2, ... );
CONCAT()函數(shù)在連接之前將所有參數(shù)轉(zhuǎn)換為字符串類型。如果任何參數(shù)為NULL,則CONCAT()函數(shù)返回NULL值。
mysql> SELECT CONCAT('MySQL','CONCAT');
+--------------------------+
| CONCAT('MySQL','CONCAT') |
+--------------------------+
| MySQLCONCAT |
+--------------------------+
1 row in set如果是添加NULL值,則CONCAT函數(shù)將會返回一個NULL值;
mysql> SELECT CONCAT('MySQL',NULL,'CONCAT');
+-------------------------------+
| CONCAT('MySQL',NULL,'CONCAT') |
+-------------------------------+
| NULL |
+-------------------------------+
1 row in setMysql Concat_Ws函數(shù)
MySQL提供了一種特殊形式的CONCAT()函數(shù):CONCAT_WS()函數(shù)。CONCAT_WS()函數(shù)將兩個或多個字符串值與預(yù)定義的分隔符相連接。
下面說明了CONCAT_WS()函數(shù)的語法:
CONCAT_WS(seperator,string1,string2, ... );
第一個參數(shù)是其他參數(shù):string1,string2,...的分隔符。
CONCAT_WS函數(shù)在字符串參數(shù)之間添加分隔符,并返回單個字符串,并在字符串參數(shù)之間插入分隔符。
以下語句連接兩個字符串值:Max和Su,并用逗號分隔這兩個字符串:
SELECT CONCAT_WS(',','Max','Su');
SQL執(zhí)行上面查詢語句,得到以下結(jié)果 -
mysql> SELECT CONCAT_WS(',','Max','Su');
+---------------------------+
| CONCAT_WS(',','Max','Su') |
+---------------------------+
| Max,Su |
+---------------------------+
1 row in set
Shell當(dāng)且僅當(dāng)作為分隔符的第一個參數(shù)為NULL時,CONCAT_WS函數(shù)才返回NULL。
mysql> SELECT CONCAT_WS(NULL ,'Jonathan', 'Minsu'); +--------------------------------------+ | CONCAT_WS(NULL ,'Jonathan', 'Minsu') | +--------------------------------------+ | NULL | +--------------------------------------+ 1 row in set
與CONCAT函數(shù)不同,CONCAT_WS函數(shù)在分隔符參數(shù)之后跳過NULL值。 換句話說,它忽略NULL值
mysql> SELECT CONCAT_WS(',','Jonathan', 'Minsu',NULL);
+-----------------------------------------+
| CONCAT_WS(',','Jonathan', 'Minsu',NULL) |
+-----------------------------------------+
| Jonathan,Minsu |
+-----------------------------------------+
1 row in set以下語句使用CONCAT_WS函數(shù)構(gòu)造完整的地址:
SELECT
CONCAT_WS(CHAR(13),
CONCAT_WS(' ', contactLastname, contactFirstname),
addressLine1,
addressLine2,
CONCAT_WS(' ', postalCode, city),
country,
CONCAT_WS(CHAR(13), '')) AS Customer_Address
FROM
customers;
SQL執(zhí)行上面查詢語句,得到以下結(jié)果 -
+----------------------------------------------------------------------------------+
| Customer_Address |
+----------------------------------------------------------------------------------+
| Schmitt Carine
54, rue Royale
44000 Nantes
France |
************ 此處省略一大波數(shù)據(jù) *******
到此這篇關(guān)于Mysql中的concat函數(shù)(拼接函數(shù))的文章就介紹到這了,更多相關(guān)Mysql concat函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- MySQL基于group_concat()函數(shù)合并多行數(shù)據(jù)
- MySQL中組合字段之concat()
- Mybatis?mysql模糊查詢方式(CONCAT多個字段)及bug
- MySQL中CONCAT和GROUP_CONCAT方法的區(qū)別詳解
- mysql 模糊查詢 concat()的用法詳解
- MySQL group_concat函數(shù)使用方法詳解
- mysql中的concat()函數(shù)模糊查詢代替${}問題
- mysql中GROUP_CONCAT函數(shù)使用及遇到問題詳解
- mysql中GROUP_CONCAT函數(shù)使用技巧及問題詳解
- MySQL中的CONCAT()函數(shù):輕松拼接字符串的利器
- MySQL中CONCAT()函數(shù)出現(xiàn)值為空的問題及解決辦法
相關(guān)文章
iOS開發(fā)runloop運行循環(huán)機制學(xué)習(xí)
這篇文章主要為大家介紹了iOS開發(fā)runloop運行循環(huán)的機制學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-07-07
用MySQL創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)庫表代碼
了解了一些最基本的操作命令后,我們再來學(xué)習(xí)如何創(chuàng)建一個數(shù)據(jù)庫和數(shù)據(jù)庫表。2008-10-10
IntelliJ?IDEA?2024與MySQL?8連接以及driver問題解決辦法
在IDE開發(fā)工具中也是可以使用mysql的,下面這篇文章主要給大家介紹了關(guān)于IntelliJ?IDEA?2024與MySQL?8連接以及driver問題解決辦法,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2024-09-09

