当前位置:首页 > 系统运维 > 正文内容

MySQL字符串如何正确连接函数

a8116255316年前 (2010-05-26)系统运维7

以下的文章主要向大家介绍的是MySQL字符串连接函数的具体操作方案,我们主要是以MySQL数据库中concat函数为例来进行详细说明,以下就是对MySQL字符串连接函数的具体操作的详细内容描述。

使用 *** :

CONCAT(str1,str2,…)

返回结果为连接参数产生的MySQL字符串。如有任何一个参数为NULL ,则返回值为 NULL。

注意:

如果所有参数均为非二进制字符串,则结果为非二进制字符串。

如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。

一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast, 例如:

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

MySQL的concat函数可以连接一个或者多个MySQL字符串,如

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函数在连接MySQL字符串的时候,只要其中一个是NULL,那么将返回NULL

MySQL> select concat('11','22',null);  +------------------------+  | concat('11','22',null) |  +------------------------+  | NULL |  +------------------------+  1 row in set (0.00 sec) 

MySQL中concat_ws函数

使用 *** :

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

CONCAT_WS() 代表 CONCAT With Separator ,是CONCAT()的特殊形式。之一个参数是其它参数的分隔符。分隔符的位置放在要连接的两个MySQL字符串之间。分隔符可以是一个字符串,也可以是其它参数。

注意:

如果分隔符为 NULL,则结果为 NULL。函数会忽略任何分隔符参数后的 NULL 值。

如连接后以逗号分隔

MySQL> select concat_ws(',','11','22','33');  +-------------------------------+  | concat_ws(',','11','22','33') |  +-------------------------------+  | 11,22,33 |  +-------------------------------+  1 row in set (0.00 sec)  

和MySQL中concat函数不同的是, concat_ws函数在执行的时候,不会因为NULL值而返回NULL

MySQL> select concat_ws(',','11','22',NULL);  +-------------------------------+  | concat_ws(',','11','22',NULL) |  +-------------------------------+  | 11,22 |  +-------------------------------+  1 row in set (0.00 sec) 

MySQL中group_concat函数

完整的语法如下:

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

基本查询

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字段的值打印在一行,逗号分隔(默认)

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字段的值打印在一行,分号分隔

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字段的值打印在一行,上面说了这么多内容,是关于对MySQL字符串连接函数的具体操作方案的介绍,不知道各位对MySQL的认识是不是更上一层楼了,时时关注IT *** ,学习最新Mysql技术。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://2345hao.cn/blog/index.php/post/20647.html

分享给朋友:

“MySQL字符串如何正确连接函数” 的相关文章

windows 7系统开机提示press any key to restart的故障分析及解

windows 7系统开机提示press any key to restart的故障分析及解

Windows 7 64位系统开机后提示"press any key to restart",无法进入系统了,具体现象如下所示: 故障分析: 故障的主要原因还是硬盘的问题,可以先检查是不是接触不良或坏了,进行修复或更换即可。 解决方法: 1、开机按F8不动到高级选项出现在松手,选“...

如何设置Win 7通知栏重新显示电源按钮

如何设置Win 7通知栏重新显示电源按钮

有些使用本本的朋友可能会发现,右下角通知栏区域会无法显示电源按钮,导致在插上电源或者是使用电池的时候都无法进行区分。造成这种情况大部分都是因为使用了第三方修改过的系统版本或者对于系统优化过度,所以今天就来解决这个问题。 第一步:在开始菜单的搜索窗口输入“gpedit.msc”,进入组策略编辑器,依...

上帝不止一个 更多Windows7 快捷模式.

上帝不止一个 更多Windows7 快捷模式.

国外媒体CNET NEWS就这个“上帝模式”和微软Windows部门主管Steven Sinofsky进行邮件交流后得知,这其实只是众多快捷方式中的一个,Sinofsky在邮件里给出了十多个这类快捷方式的关键字符串。 它们的建立方法和之前的“上帝模式”一样,在任意位置新建的一个文件夹,然后改名即可...

Win 7系统中其他声音正常但酷狗音乐没声音怎么回事

Win 7系统中其他声音正常但酷狗音乐没声音怎么回事

故障现象: Windows 7酷狗软件无声音,系统声音正常。 原因分析: 1. 查看酷狗软件设置 2. 查看系统设置 解决方案: 1. Windows 7操作方法 如图:查看是否处于禁音状态   Windows 7系统声音正常酷狗音乐无声音 2. 查看设置音频输出是否...

windows 7系统怎么取消禁ping命令?

windows 7系统怎么取消禁ping命令?

当我在虚拟机的linux系统中ping本机的ip发现ping不通,而本机可以ping通虚拟机中的ip。应该是出于安全考虑吧,Windows 7默认在防火墙里禁止了。 1、查看主机ip 打开“开始”程序中的“附件”,找到“命令提示符”打开。输入命令:ipconfig,可以看到本机的ip是192.1...

微软为windows 7用户重新发布补丁KB2952664 帮助提升Win10升级体

微软为windows 7用户重新发布补丁KB2952664 帮助提升Win10升级体

1月13日消息,微软今天为Windows 7(SP1)用户重新推送了编号为KB2952664的更新补丁,该更新在官方KB知识库中的描述为“Windows 7系统升级兼容性更新”,用于帮助微软改进当前版本系统,提升升级到最新版Win10系统的体验。 这项更新还用于在系统中显示Windows10更新提...