一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|數(shù)據(jù)庫(kù)技術(shù)|

服務(wù)器之家 - 數(shù)據(jù)庫(kù) - Mysql - 詳解MySQL中concat函數(shù)的用法(連接字符串)

詳解MySQL中concat函數(shù)的用法(連接字符串)

2020-07-06 19:45飄渺的悠遠(yuǎn) Mysql

本篇文章主要介紹了MySQL中concat函數(shù)的用法(連接字符串),在命令行模式下進(jìn)行測(cè)試。具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。

MySQLconcat函數(shù)

使用方法:

CONCAT(str1,str2,…) 

返回結(jié)果為連接參數(shù)產(chǎn)生的字符串。如有任何一個(gè)參數(shù)為NULL ,則返回值為 NULL。

注意:

如果所有參數(shù)均為非二進(jìn)制字符串,則結(jié)果為非二進(jìn)制字符串。

如果自變量中含有任一二進(jìn)制字符串,則結(jié)果為一個(gè)二進(jìn)制字符串。

一個(gè)數(shù)字參數(shù)被轉(zhuǎn)化為與之相等的二進(jìn)制字符串格式;若要避免這種情況,可使用顯式類型 cast, 例如:

?
1
SELECT CONCAT(CAST(int_col AS CHAR), char_col)

MySQL的concat函數(shù)可以連接一個(gè)或者多個(gè)字符串,如

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
mysql> select concat('10');
+--------------+
| concat('10') |
+--------------+
| 10  |
+--------------+
1 row in set (0.00 sec)
 
mysql> select concat('11','22','33');
+------------------------+
| concat('11','22','33') |
+------------------------+
| 112233 |
+------------------------+
1 row in set (0.00 sec)

MySQL的concat函數(shù)在連接字符串的時(shí)候,只要其中一個(gè)是NULL,那么將返回NULL

?
1
2
3
4
5
6
7
mysql> select concat('11','22',null);
+------------------------+
| concat('11','22',null) |
+------------------------+
| NULL  |
+------------------------+
1 row in set (0.00 sec)

MySQL中concat_ws函數(shù)

使用方法:

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

CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。第一個(gè)參數(shù)是其它參數(shù)的分隔符。分隔符的位置放在要連接的兩個(gè)字符串之間。分隔符可以是一個(gè)字符串,也可以是其它參數(shù)。

注意:

如果分隔符為 NULL,則結(jié)果為 NULL。函數(shù)會(huì)忽略任何分隔符參數(shù)后的 NULL 值。

如連接后以逗號(hào)分隔

?
1
2
3
4
5
6
7
8
mysql> select concat_ws(',','11','22','33');
 
+-------------------------------+
| concat_ws(',','11','22','33') |
+-------------------------------+
| 11,22,33 |
+-------------------------------+
1 row in set (0.00 sec)

和MySQL中concat函數(shù)不同的是, concat_ws函數(shù)在執(zhí)行的時(shí)候,不會(huì)因?yàn)镹ULL值而返回NULL

?
1
2
3
4
5
6
7
mysql> select concat_ws(',','11','22',NULL);
+-------------------------------+
| concat_ws(',','11','22',NULL) |
+-------------------------------+
| 11,22 |
+-------------------------------+
1 row in set (0.00 sec)

MySQL中g(shù)roup_concat函數(shù)

完整的語法如下:

group_concat([DISTINCT] 要連接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])

基本查詢

?
1
2
3
4
5
6
7
8
9
10
11
12
mysql> select * from aa;
+------+------+
| id| name |
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200  |
|3 | 500  |
+------+------+
6 rows in set (0.00 sec)

以id分組,把name字段的值打印在一行,逗號(hào)分隔(默認(rèn))

?
1
2
3
4
5
6
7
8
9
mysql> select id,group_concat(name) from aa group by id;
+------+--------------------+
| id| group_concat(name) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
3 rows in set (0.00 sec)

以id分組,把name字段的值打印在一行,分號(hào)分隔

?
1
2
3
4
5
6
7
8
9
mysql> select id,group_concat(name separator ';') from aa group by id;
+------+----------------------------------+
| id| group_concat(name separator ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500  |
+------+----------------------------------+
3 rows in set (0.00 sec)

以id分組,把去冗余的name字段的值打印在一行,

逗號(hào)分隔

?
1
2
3
4
5
6
7
8
9
mysql> select id,group_concat(distinct name) from aa group by id;
+------+-----------------------------+
| id| group_concat(distinct name) |
+------+-----------------------------+
|1 | 10,20|
|2 | 20  |
|3 | 200,500 |
+------+-----------------------------+
3 rows in set (0.00 sec)

以id分組,把name字段的值打印在一行,逗號(hào)分隔,以name排倒序

?
1
2
3
4
5
6
7
8
9
mysql> select id,group_concat(name order by name desc) from aa group by id;
+------+---------------------------------------+
| id| group_concat(name order by name desc) |
+------+---------------------------------------+
|1 | 20,20,10  |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
3 rows in set (0.00 sec)

repeat()函數(shù)

用來復(fù)制字符串,如下'ab'表示要復(fù)制的字符串,2表示復(fù)制的份數(shù)

?
1
2
3
4
5
6
7
8
9
mysql> select repeat('ab',2);
 
+----------------+
| repeat('ab',2) |
+----------------+
| abab      |
+----------------+
 
1 row in set (0.00 sec)

又如

?
1
2
3
4
5
6
7
8
mysql> select repeat('a',2);
 
+---------------+
| repeat('a',2) |
+---------------+
| aa      |
+---------------+
1 row in set (0.00 sec)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/ZDPPU/p/5811976.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 男人的影院 | 1717she精品视频在线观看 | 91在线视频导航 | 亚洲 日韩 自拍 视频一区 | sao虎在线精品永久 s0e一923春菜花在线播放 | aⅴ导航站 | 91在线视频导航 | 涩色网站 | 亚洲qvod图片区电影 | 国产一区二区精品久 | 人成网站在线观看 | 国产亚洲女人久久久久久 | 99久久精品99999久久 | 动漫美丽妇人1~2在线看 | 国产情侣视频观看 | 日韩精品一区二区三区老鸭窝 | 777奇米影视一区二区三区 | a级片欧美 | 精品国产一区二区三区在线观看 | 91精品大神国产在线播放 | 成人免费体验区福利云点播 | 国产香蕉97碰碰在线视频 | 四虎成人免费观看在线网址 | 成人小视频在线观看 | 奇米影视久久 | 国产99精品免费视频看6 | 日本亚洲欧洲高清有码在线播放 | 激情小说欧美图片 | 色姑娘导航 | 国产精品免费久久久久影院小说 | 久久中文字幕亚洲精品最新 | 99久久中文字幕伊人 | 国产精品色片 | 久久久久久久伊人电影 | 我把校花黑色蕾丝胸罩脱了 | 啪啪无尽3d动漫漫画免费网站 | 我和寂寞孕妇的性事 | 精品国产自在现线拍400部 | 新新电影理论中文字幕 | 夫妻性生活免费在线观看 | 经典千人斩一区二区视频 |