看来看一下表中的数据 select * from t; 下一步来看一下group_concat函数的用法 select ID,group_concat(Name) from t group by ID; 如果要消除重复项可以加distinct select ID,group_concat(distinct Name) from t group by ID; 如果还排序可以这样 select ID,group_concat(name order by name desc) from t group
percona有一篇blog: The power of MySQL GROUP_CONCAT 比较详细地介绍了GROUP_CONCAT函数的用法.简单地翻译了一下. 假设你有4名工程师,这周他们为6名客户解决了15个问题.他们之间彼此协作,如何展示他们之间的逻辑关系呢?我是这么做的: 译者的sql与原文给出的sql有些许的差异,不过核心思想是一致的. 创建表: 工程师表 engineers (id, name, surname, URL) 客户表 customers (id, company
实现类似mysql group_concat的功能 SELECT SG.Id ,SG.GroupName ,HostNames = STUFF((SELECT ',' + SH.[HostName] FROM SaltHost SH WHERE SG.Id = SH.HostGroupId , , '') FROM [SaltGroup] SG ORDER BY SG.Id
mysql group_concat的长度问题 show variables like 'group_concat_max_len';+----------------------+-------+| Variable_name | Value |+----------------------+-------+| group_concat_max_len | 1024 | +----------------------+-------+1 row in set (0.02 sec) 默认1024
如何用一个SQL查询出一个班级各个学科第N名是谁? 首先贴出建表语句,方便大家本地测试: -- 建表语句 CREATE TABLE score ( id INT NOT NULL auto_increment, `name` VARCHAR (20) NOT NULL DEFAULT '' COMMENT '姓名', sub VARCHAR (20) NOT NULL DEFAULT '' COMMENT '学科', score INT NOT NULL DEFAULT 0 COMMENT '分
mysql方法来源于:http://www.cnblogs.com/jjcc/p/5896588.html ###在网上看到一篇,非常赞的方法### 比如说要获取班级的前3名,mysql就可以用GROUP_CONCAT + GROUP BY + substring_index实现. 考试表 DROP TABLE IF EXISTS `test`;CREATE TABLE `test` (`id` int(11) DEFAULT NULL,`name` varchar(20) DEFAULT N
Mysql 的 GROUP_CONCAT 函数默认将查询的结果用逗号拼接并返回一个字符串,如:李四,long,张三 1. 常用方式 select GROUP_CONCAT(user_name) userName from user where type = 1 2. GROUP_CONCAT 结合 IN 的使用 -- 查询指定id对应的name值,返回结果为 name7,name4,name2,name5 order by field(org_id,0,7,4,2,5)表示按照给定字段的顺
例一: SELECT num from user 1.使用group_concat函数得到列转行 select group_concat(num) from user 2.使用SUBSTRING_INDEX和CROSS JOIN将列里面的的数字都拆分出来,把一行变成一列 方法一:建配置表(网上查询的方法): )); INSERT INTO digits VALUES (), (), (), (), (), (), (), (), (), (); )); INSERT INTO sequence