日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL concat()函数

發布時間:2023/12/3 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL concat()函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自? ?MySQL concat()函數

在本教程中,您將學習使用MySQL?CONCAT和CONCAT_WS函數將兩個或多個字符串連接在一起的各種方法。

要連接兩個或多個引用的字符串值,請將字符串放在一起,如下所示:

SELECT 'MySQL ' 'String ' 'Concatenation';

執行上面查詢語句,得到以下結果 -

mysql> SELECT 'MySQL ' 'String ' 'Concatenation'; +----------------------------+ | MySQL | +----------------------------+ | MySQL String Concatenation | +----------------------------+ 1 row in set

與其他數據庫管理系統相比,MySQL字符串連接更為清晰。 例如,如果您使用PostgreSQL或Oracle,則必須使用字符串連接運算符||。 在Microsoft SQL Server中,您可以使用加法算術運算符(+)連接字符串值。

除了使用空格進行字符串連接之外,MySQL還提供了兩個連接字符串值的函數:CONCAT和CONCAT_WS。

MySQL CONCAT函數

MySQL?CONCAT()函數需要一個或多個字符串參數,并將它們連接成一個字符串。CONCAT()函數需要至少一個參數,否則會引起錯誤。

下面說明了CONCAT()函數的語法。

CONCAT(string1,string2, ... );

CONCAT()函數在連接之前將所有參數轉換為字符串類型。如果任何參數為NULL,則CONCAT()函數返回NULL值。

以下語句連接兩個引用的字符串:MySQL和CONCAT。

SELECT CONCAT('MySQL','CONCAT');

執行上面查詢語句,得到以下結果 -

mysql> SELECT CONCAT('MySQL','CONCAT'); +--------------------------+ | CONCAT('MySQL','CONCAT') | +--------------------------+ | MySQLCONCAT | +--------------------------+ 1 row in set

如果添加NULL值,則CONCAT函數將返回一個NULL值,如下所示:

mysql> SELECT CONCAT('MySQL',NULL,'CONCAT'); +-------------------------------+ | CONCAT('MySQL',NULL,'CONCAT') | +-------------------------------+ | NULL | +-------------------------------+ 1 row in set

請參見示例數據庫(yiibaidb)中的customers表,其結構如下所示 -

mysql> desc customers; +------------------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------------+---------------+------+-----+---------+-------+ | customerNumber | int(11) | NO | PRI | NULL | | | customerName | varchar(50) | NO | | NULL | | | contactLastName | varchar(50) | NO | | NULL | | | contactFirstName | varchar(50) | NO | | NULL | | | phone | varchar(50) | NO | | NULL | | | addressLine1 | varchar(50) | NO | | NULL | | | addressLine2 | varchar(50) | YES | | NULL | | | city | varchar(50) | NO | | NULL | | | state | varchar(50) | YES | | NULL | | | postalCode | varchar(15) | YES | | NULL | | | country | varchar(50) | NO | | NULL | | | salesRepEmployeeNumber | int(11) | YES | MUL | NULL | | | creditLimit | decimal(10,2) | YES | | NULL | | +------------------------+---------------+------+-----+---------+-------+ 13 rows in set

要獲取聯系人的全名,您可以使用CONCAT函數將名字,空格,姓氏連接,如下查詢語句:

SELECT concat(contactFirstName,' ',contactLastName) Fullname FROMcustomers;

執行上面查詢語句,得到以下結果 -

mysql> SELECT concat(contactFirstName,' ',contactLastName) Fullname FROMcustomers; +--------------------------+ | Fullname | +--------------------------+ | Carine Schmitt | | Jean King | | Peter Ferguson | | Janine Labrune | | Jonas Bergulfsen | ***** 此處省略了一大波數據 **** | Sue Taylor | | Thomas Minsu | | Valarie Franco | | Tony Snowden | +--------------------------+ 122 rows in set

?

MySQL CONCAT_WS函數:使用分隔符連接字符串

MySQL提供了一種特殊形式的CONCAT()函數:CONCAT_WS()函數。CONCAT_WS()函數將兩個或多個字符串值與預定義的分隔符相連接。

下面說明了CONCAT_WS()函數的語法:

CONCAT_WS(seperator,string1,string2, ... );

第一個參數是其他參數:string1,string2,...的分隔符。

CONCAT_WS函數在字符串參數之間添加分隔符,并返回單個字符串,并在字符串參數之間插入分隔符。

以下語句連接兩個字符串值:Max和Su,并用逗號分隔這兩個字符串:

SELECT CONCAT_WS(',','Max','Su');

執行上面查詢語句,得到以下結果 -

mysql> SELECT CONCAT_WS(',','Max','Su'); +---------------------------+ | CONCAT_WS(',','Max','Su') | +---------------------------+ | Max,Su | +---------------------------+ 1 row in set

當且僅當作為分隔符的第一個參數為NULL時,CONCAT_WS函數才返回NULL。請參閱以下示例:

mysql> SELECT CONCAT_WS(NULL ,'Jonathan', 'Minsu'); +--------------------------------------+ | CONCAT_WS(NULL ,'Jonathan', 'Minsu') | +--------------------------------------+ | NULL | +--------------------------------------+ 1 row in set

與CONCAT函數不同,CONCAT_WS函數在分隔符參數之后跳過NULL值。 換句話說,它忽略NULL值。

mysql> SELECT CONCAT_WS(',','Jonathan', 'Minsu',NULL); +-----------------------------------------+ | CONCAT_WS(',','Jonathan', 'Minsu',NULL) | +-----------------------------------------+ | Jonathan,Minsu | +-----------------------------------------+ 1 row in set

以下語句使用CONCAT_WS函數構造完整的地址:

SELECT CONCAT_WS(CHAR(13),CONCAT_WS(' ', contactLastname, contactFirstname),addressLine1,addressLine2,CONCAT_WS(' ', postalCode, city),country,CONCAT_WS(CHAR(13), '')) AS Customer_Address FROMcustomers;

執行上面查詢語句,得到以下結果 -

+----------------------------------------------------------------------------------+ | Customer_Address | +----------------------------------------------------------------------------------+ | Schmitt Carine 54, rue Royale 44000 Nantes France | ************ 此處省略一大波數據 *******

在本教程中,您已經學習了如何使用MySQL?CONCAT和CONCAT_WS函數將一個或多個字符串值連接到成單個字符串。

總結

以上是生活随笔為你收集整理的MySQL concat()函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。