繁体   English   中英

查询以合并两列之一

[英]query to combine two rows of one of the columns

在PL / SQL开发人员中,我想编写一个查询来为列提供合并行的值? 恩。 如果emp 1和emp 2具有相同的薪水(如200),而雇员3,4,5的工资为1000,则输出应该类似于emp 1和2 emp,结果应显示单个值200合并两行。 对于emp 3,4和5,salary列应仅显示单个值1000,将salary列中的3行合并。

如图片所示

在此处输入图片说明

为了对AND和进行分组并显示值,可以使用:

create table vls(empid int, tval int);
insert into vls(empid, tval)
    values (1,200),(2,200),(3,1000),(4,1000),(5,1000);
select tval as grouped_value,sum(tval) as sum_tval,avg(tval) as avg_tval
from vls
group by tval;
create table vls(empid int, tval int);

insert into vls(empid, tval) values (1,200);
insert into vls(empid, tval) values (2,200);
insert into vls(empid, tval) values (3,1000);
insert into vls(empid, tval) values (4,1000);
insert into vls(empid, tval) values (5,1000);

select listagg(empid, ' ') within group (order by empid) as empids, tval
from vls
group by
 tval;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM