mysql中拼接函数用法

阅读更多

在查询数据时,通常会对数据进行处理,这里说一下拼接处理,当然可以通过Java代码进行处理,但是我这里要说的是通过sql处理;下面说一下具体有哪些方式

方式一:concat函数

1.如果是某个字段拼接固定值时,concat(column1,'xxx'...) as column1 返回值123xxx

2.多个字段拼接时,concat(column1,column2...) as key 返回值123456

3.使用特定符号拼接时,这就是第二种方式了

注意:当多个字段拼接时,如果有某个字段值为null,那么拼接结果为null

方式二:concat_ws函数

concat_ws函数主要是concat函数扩展形式,可以指定拼接符号,contcat_ws(separator,str1,str2,...)

例如:使用_拼接各个字段值,concat_ws('_',column1,column2,...) 返回值 123_456

方式三:group_concat函数

从字面理解这个函数,其实就是组内拼接,所以要和group by 分组函数联合使用了

eg:按照名称分组,拼接id

name  id

小明   1

小张   2

小明   3

sql:select name,group_concat(id) as id from table (where 语句) group by name

返回结果:name  id

                   小明   1,3

                   小张   2

扩展形式语法:group_concat( [distinct] 要连接的字段 [order by 排序字段 asc/desc ] [separator '分隔符'] )

说明:通过使用distinct可以排除重复值;如果希望对结果中的值进行排序,可以使用order by子句;separator是一个字符串值,缺省为一个逗号

 

 

 

 

你可能感兴趣的:(mysql,concat,concat_ws,group_concat,拼接函数)