2017-10-12 4 views
2

PL/SQL開発者で、列の結合された行の値を与えるクエリを記述したいのですか?例。 emp1と2の給与が200のように同じで、従業員3,4,5の給与が1000の場合、出力は1と2のempのようになり、結果は2つの行をマージする単一の値200を示すはずです。 emp 3,4の場合、給与列には給与列に3行をマージする単一の値1000のみが表示されます。列の2つの行を結合するクエリ

で和グループ化するためには画像

enter image description here

+1

これはあなたを助けるかもしれないします。https:// stackoverflow.com/questions/1076011/how-can-multiple-rows-be-concatenated-into-one-in-oracle-without-creating-a-stor –

+0

http://meta.stackoverflow.com/questions/をご覧ください。 285551/why-may-i-not-upload-コード・オン・オン・ザ・イメージ・オブ・ザ・コード質問/ 285557および受諾された回答 –

答えて

0

に示されている、あなたが使用できる値を示したように:

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; 
0
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; 
関連する問題