我用的数据库是mysql
我的表结构是这样的:
--残品评分表
create table prodeuctScoreTable(
score_id int primary key auto_increment,
product_id int not null,
X1 boolean null default 0,
X2 boolean null default 0,
X3 boolean null default 0,
X4 boolean null default 0,
X5 boolean null default 1,
popedom_evaluate varchar(255) null,
image varchar(100) null
);
插入了测试数据
insert into prodeuctScoreTable values(null,2,0,0,0,0,1,'此产品很好','image/biaoqing/3.gif',1);
insert into prodeuctScoreTable values(null,2,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,2,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,2,0,0,0,1,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,2,1,0,0,0,0,'此产品很一般','image/biaoqing/7.gif',1); insert into prodeuctScoreTable values(null,3,0,0,0,0,1,'此产品很好','image/biaoqing/3.gif',1);
insert into prodeuctScoreTable values(null,3,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,3,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,3,0,0,0,1,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,3,1,0,0,0,0,'此产品很一般','image/biaoqing/7.gif',1);
我想得到的结果是这样的:
表头 ---product_id---X1---X2---X3---X4---X5表字段-------2--------1---0-----2---1----1
表字段-------3--------1---0-----2---1----1 也就是统计同一个产品的每个分数字段为 1 的总数 并且 product_id 这一列不能重复 各位元老帮帮忙了
我的表结构是这样的:
--残品评分表
create table prodeuctScoreTable(
score_id int primary key auto_increment,
product_id int not null,
X1 boolean null default 0,
X2 boolean null default 0,
X3 boolean null default 0,
X4 boolean null default 0,
X5 boolean null default 1,
popedom_evaluate varchar(255) null,
image varchar(100) null
);
插入了测试数据
insert into prodeuctScoreTable values(null,2,0,0,0,0,1,'此产品很好','image/biaoqing/3.gif',1);
insert into prodeuctScoreTable values(null,2,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,2,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,2,0,0,0,1,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,2,1,0,0,0,0,'此产品很一般','image/biaoqing/7.gif',1); insert into prodeuctScoreTable values(null,3,0,0,0,0,1,'此产品很好','image/biaoqing/3.gif',1);
insert into prodeuctScoreTable values(null,3,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,3,0,0,1,0,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,3,0,0,0,1,0,'此产品很一般','image/biaoqing/7.gif',1);
insert into prodeuctScoreTable values(null,3,1,0,0,0,0,'此产品很一般','image/biaoqing/7.gif',1);
我想得到的结果是这样的:
表头 ---product_id---X1---X2---X3---X4---X5表字段-------2--------1---0-----2---1----1
表字段-------3--------1---0-----2---1----1 也就是统计同一个产品的每个分数字段为 1 的总数 并且 product_id 这一列不能重复 各位元老帮帮忙了
2. 注意MySQL != MS SQL
3. 当您的问题得到解答后请及时结贴. http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.htmlmysql> select product_id,sum(X1),sum(X2),sum(X3),sum(X4),sum(X5)
-> from prodeuctScoreTable
-> group by product_id;
+------------+---------+---------+---------+---------+---------+
| product_id | sum(X1) | sum(X2) | sum(X3) | sum(X4) | sum(X5) |
+------------+---------+---------+---------+---------+---------+
| 2 | 1 | 0 | 2 | 1 | 1 |
| 3 | 1 | 0 | 2 | 1 | 1 |
+------------+---------+---------+---------+---------+---------+
2 rows in set (0.00 sec)mysql>