Sql 查询以组合其中一列的两行
在PL/SQLDeveloper中,我想编写一个查询,为列提供合并行的值?例如,如果emp 1和emp 2的工资相同,如200,员工3、4、5的工资为1000,则1和2 emp的输出应相同。结果应显示合并两行的单个值200。对于emp 3、4和5,薪资列应仅显示单个值1000,并合并薪资列中的3行 如图所示Sql 查询以组合其中一列的两行,sql,oracle,Sql,Oracle,在PL/SQLDeveloper中,我想编写一个查询,为列提供合并行的值?例如,如果emp 1和emp 2的工资相同,如200,员工3、4、5的工资为1000,则1和2 emp的输出应相同。结果应显示合并两行的单个值200。对于emp 3、4和5,薪资列应仅显示单个值1000,并合并薪资列中的3行 如图所示 为了按分组和求和并显示您可以使用的值: create table vls(empid int, tval int); insert into vls(empid, tval) val
为了按分组和求和并显示您可以使用的值:
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;