1

好的,我很抱歉标题含糊,因为我不知道该怎么说。这是我的问题。

CREATE TABLE dwd_temp (con VARCHAR2(10),line_no VARCHAR2(10),wgt NUMBER,pallet     VARCHAR2(10));
insert INTO  dwd_temp VALUES('a','1',10,NULL);
insert INTO  dwd_temp VALUES('b','1',11,'x');
insert INTO  dwd_temp VALUES('b','2',12,'x');
insert INTO  dwd_temp VALUES('b','3',13,'y');

现在我的要求是“替换”最后具有相同“托盘”的行'。所以我的结果应该是

 a           1          10           null
 b           1          23            x
 b           3          13            y 
4

2 回答 2

1

VARCHAR2 建议您使用 Oracle db。

select 
  con, min(line_no), sum(wgt), pallet
from dwd_temp
group by pallet, con;

或者

select 
  min(con), min(line_no), sum(wgt), pallet
from dwd_temp
group by pallet;

SQLFiddle

答案将取决于您想要什么分组。

于 2012-12-03T10:10:32.327 回答
0
select con, min(line_no), sum(wgt), pallet
from dwd_temp 
group by con, pallet
于 2012-12-03T10:06:52.543 回答