sqlgroup分组的时候获取该组的所有id
sql使⽤group by 进⾏分组的时候查该组的id只会返回⼀个,只需使⽤group_concat(id)即可以获得该组的所有id。创建表;
CREATE TABLE `tb_dept2` (
`id` int(11) NOT NULL,
`name` varchar(22) DEFAULT NULL,
`location` varchar(50) DEFAULT NULL,
`enum` enum('first','second') DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
插⼊数据;
+----+--------+----------+-------+
| id | name  | location | enum  |
+----+--------+----------+-------+
|  1 | 21    | 12      | NULL  |
|  2 | 2312  | 32      | first |
groupby分组| 24 | 2641  | 12      | NULL  |
| 25 | 23412  | 32      | first |
| 26 | g34fd  | we3      | NULL  |
| 39 | g34edd | we3      |      |
+----+--------+----------+-------+
未使⽤:
select id from tb_dept2 group by location;
+----+
| id |
+----+
|  1 |
|  2 |
| 26 |
+----+
使⽤:
select id,group_concat(id) as ids from tb_dept2 group by location
-> ;
+----+-------+ | id | ids  |
+----+-------+ |  1 | 1,24  | |  2 | 2,25  | | 26 | 26,39 | +----+-------+

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。