【发布时间】:2012-10-19 13:49:52
【问题描述】:
我有一个表number_color_style,其结构如下所示。
此表包含如下数据(8行)
我想要输出的是所有按number_color_id、number_style_id分组的记录
我试过下面的查询
SELECT *
FROM `number_color_style`
GROUP BY `number_color_id` , `number_style_id`
它给了我输出,但有些行丢失了
我想要的是四组数据,不遗漏一行(应该包含所有 8 行)。 例如:
- 第一组
number_color_id = 1,number_style_id = 1 - 第二组
number_color_id = 1,number_style_id = 2 - 第三组
number_color_id = 2,number_style_id = 1 - 第四组
number_color_id = 2,number_style_id = 2
我该怎么做?
创建表查询
CREATE TABLE IF NOT EXISTS `number_color_style` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`img` varchar(100) NOT NULL,
`number_color_id` int(11) NOT NULL,
`number_style_id` int(11) NOT NULL,
`number_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
);
一些样本数据
INSERT INTO `jink`.`number_color_style` (`id`, `img`, `number_color_id`, `number_style_id`, `number_id`) VALUES (NULL, 'img1.png', '1', '1', '10'), (NULL, 'img2.png', '1', '1', '10'), (NULL, 'img3.png', '1', '2', '10'), (NULL, 'img4.png', '2', '1', '10'), (NULL, 'img5.png', '2', '1', '10');
谢谢
【问题讨论】: