oracle数据库行转列加排序

行转列排序之前:
select * from lawtlegaladvisermanageedu t order by id asc;

	id	EDUCATIONID  EDUCATION  PROFESSIONAL  RELATEID
1	100005	116245	     大专生	电子	      100048
2	100013	116245	     大专生	电信	      100049
3	100014	116246	     本科生	电科	      100098
4	100015	116245	     大专生	计算机	      100104
5	100029	116245	     大专生	通信	      100105
6	100030	116246	     本科生	自动化	      100105
7	100031	116247	     研究生	单片机	      100105
8	100032	116248	     博士生	arm	      100105

行转列排序之后: select relateid as id, max(r) as eduInfo from (select relateid,replace(wmsys.wm_concat(education||','||professional||';') OVER(PARTITION BY relateid ORDER BY id asc),';,',';') r from LawtLegalAdviserManageEdu) group by relateid; id eduInfo 1 100048 大专生,电子; 2 100049 大专生,电信; 3 100098 本科生,电科; 4 100104 大专生,计算机; 5 100105 大专生,通信;本科生,自动化;研究生,单片机;博士生,arm;

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值