MySQL列转字符串

来源:互联网 发布:上海企业网络推广平台 编辑:程序博客网 时间:2024/05/20 17:10

前一段时间,学习了MYSQL,将一些比较常用的语句记录如下,以备以后查阅。

 

 1、使用GROUP_CONCAT将列转换为用逗号分隔的字符串

 SELECT TYPE,GROUP_CONCAT(NAME),GROUP_CONCAT(VALUE) FROM BaseInfo WHERE TYPE=1 GROUP BY TYPE;
 
 2.当然分隔符还可以自定义,默认是以“,”作为分隔符,若要改为“|||”,则使用SEPARATOR来指定,例如:
 
 SELECT TYPE,GROUP_CONCAT(NAME SEPARATOR '|||'),GROUP_CONCAT(CAST(VALUE AS CHAR) SEPARATOR '|||') FROM BaseInfo WHERE TYPE=1 GROUP BY TYPE;

3.除此之外,还可以对这个组的值来进行排序再连接成字符串,例如按id降序来排:
 
 SELECT TYPE,GROUP_CONCAT(NAME  ORDER BY NAME DESC SEPARATOR '|||'),GROUP_CONCAT(CONVERT(VALUE,CHAR)  ORDER BY VALUE DESC) FROM BaseInfo WHERE TYPE=1 GROUP BY TYPE;
 

 

原创粉丝点击