这里是链接列表的id:我的表Sqlfiddle数据逆透视的GROUP_CONCAT后
内容
mysql> select * from tb_dts;
+----+------+------+
| Id | key1 | key2 |
+----+------+------+
| 1 | 1 | 1 |
| 2 | 1 | 1 |
| 3 | 1 | 1 |
| 4 | 2 | 1 |
| 5 | 2 | 1 |
| 6 | 2 | 1 |
| 7 | 2 | 1 |
| 8 | 1 | 2 |
| 9 | 1 | 2 |
| 10 | 1 | 2 |
| 11 | 1 | 2 |
| 12 | 1 | 2 |
| 13 | 3 | 1 |
| 14 | 3 | 1 |
| 15 | 3 | 1 |
| 16 | 3 | 1 |
| 17 | 2 | 2 |
| 18 | 2 | 2 |
| 19 | 2 | 2 |
| 20 | 2 | 3 |
| 21 | 2 | 3 |
| 22 | 2 | 3 |
| 23 | 3 | 2 |
| 24 | 3 | 2 |
| 25 | 3 | 2 |
| 26 | 3 | 2 |
+----+------+------+
26 rows in set (0.00 sec)
这是我试过
mysql> select group_concat(id) from tb_dts group by key1,key2 limit 0,4;
+------------------+
| group_concat(id) |
+------------------+
| 1,2,3 |
| 8,9,10,11,12 |
| 4,5,6,7 |
| 17,18,19 |
+------------------+
4 rows in set (0.00 sec)
mysql> select id from tb_dts group by key1,key2 limit 0,4;
+----+
| id |
+----+
| 1 |
| 8 |
| 4 |
| 17 |
+----+
4 rows in set (0.00 sec)
这是我所希望得到的输出group by key1,key2 limit 0,4;
:余万■所有ID在一列,由KEY1和KEY2限制组之内,我不知道如何得到它GROUP_CONCAT不能帮助我在此
的前4独特的key1,key2
什么都id
组合跌倒是我的问题是使用group by key1,key2 limit 0,4;
+----+
| id |
+----+
| 1 |
| 2 |
| 3 |
| 8 |
| 9 |
| 10 |
| 11 |
| 12 |
| 4 |
| 5 |
| 6 |
| 7 |
| 17 |
| 18 |
| 19 |
+----+
15 rows in set (0.00 sec)
表结构
DROP TABLE IF EXISTS `tb_dts`;
CREATE TABLE `tb_dts` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`key1` int(11) DEFAULT '-99',
`key2` int(11) DEFAULT '-99',
PRIMARY KEY (`Id`),
KEY `main` (`key1`,`key2`)
) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=latin1;
LOCK TABLES `tb_dts` WRITE;
INSERT INTO `tb_dts` VALUES (1,1,1),(2,1,1),(3,1,1),(4,2,1),(5,2,1),(6,2,1),(7,2,1),(8,1,2),(9,1,2),(10,1,2),(11,1,2),(12,1,2),(13,3,1),(14,3,1),(15,3,1),(16,3,1),(17,2,2),(18,2,2),(19,2,2),(20,2,3),(21,2,3),(22,2,3),(23,3,2),(24,3,2),(25,3,2),(26,3,2);
UNLOCK TABLES;
你误解了这个问题,为前4个独特的组合为key1,KEY2什么都落在ID是我的问题是'通过键1,键2极限0,4组;' – user3637224