有如下数据:
pname mver sver re itype iversion
-------------------------------------------------------------------------------------------------------------
独立风控系统产品2 V3.0 V3.2 独立风控系统产品小版本备注 开户接口 1.2
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 交易接口 1.0
独立风控系统产品2 V3.0 V3.1 独立风控系统产品2 小版本备注 行情接口 asdsada
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 行情接口 aaaaaaaaa
wcm
交易风控结算系统产品1
独立风控系统产品2 V1.0
独立风控系统产品2 V3.0 V3.1 独立风控系统产品2 小版本备注 结算接口 1.02234
独立交易系统产品1
其他产品1
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 PSIS接口 1.02
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: 开户接口 1.2678
独立风控系统产品2 V3.0 V3.1 独立风控系统产品2 小版本备注 交易接口 1.99
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: PSIS接口 1.02
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: 行情接口 asdsada
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 开户接口 1.2
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: 结算接口 1.02234如何实现相同sver的itype列和iversion列的合并
用ORACLE如何实现?
pname mver sver re itype iversion
-------------------------------------------------------------------------------------------------------------
独立风控系统产品2 V3.0 V3.2 独立风控系统产品小版本备注 开户接口 1.2
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 交易接口 1.0
独立风控系统产品2 V3.0 V3.1 独立风控系统产品2 小版本备注 行情接口 asdsada
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 行情接口 aaaaaaaaa
wcm
交易风控结算系统产品1
独立风控系统产品2 V1.0
独立风控系统产品2 V3.0 V3.1 独立风控系统产品2 小版本备注 结算接口 1.02234
独立交易系统产品1
其他产品1
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 PSIS接口 1.02
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: 开户接口 1.2678
独立风控系统产品2 V3.0 V3.1 独立风控系统产品2 小版本备注 交易接口 1.99
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: PSIS接口 1.02
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: 行情接口 asdsada
独立风控系统产品2 V2.0 V2.1 V2.1小版本备注 开户接口 1.2
独立风控系统产品1 V2.0 V2.1 小版本备注:小版本备注: 结算接口 1.02234如何实现相同sver的itype列和iversion列的合并
用ORACLE如何实现?
ltrim(max(sys_connect_by_path(itype, ';')), ';') as itype,
ltrim(max(sys_connect_by_path(iversion, ';')), ';') as iversion
from (
select distinct pname,mversion, aversion,itype,iversion,
row_number() over(PARTITION BY aversion ORDER BY aversion) rn,
rownum prn
from (
SELECT distinct b.name as pname,
c.VERSIONNO as mversion,
d.VERSIONNO as aversion,
f.re as itype,e.VERSION as iversion
FROM T_DEVUSER a INNER JOIN T_DEVPRODUCT b ON a.USERID = b.USERID
LEFT JOIN T_DEVMAINVERSION c ON b.ID = c.PRODUCTID
LEFT JOIN T_DEVAUXVERSION d ON c.ID = d.MAINVERSIONID
LEFT JOIN T_DEVCHOOSE e ON d.ID = e.AUXID
LEFT JOIN tech.t_dict f ON f.dictvalue = e.type and f.classid = 0179
left join t_blobfile g on g.fileid = b.explainfileid
WHERE 1=1 and a.abbr like '%kjben1%'
)
)
START WITH rn = 1
CONNECT BY prn - 1 = PRIOR prn AND aversion = PRIOR aversion
GROUP BY pname,mversion, aversion
ORDER BY mversion,aversion
这样为什么不对?(以上表删除re列)
--------------------------------------------------------------------------
独立风控系统产品2 V3.0 V3.1 PSIS接口 1.02
独立风控系统产品1 V2.0 V2.1 结算接口 1.02234
独立风控系统产品2 V3.0 V3.1 交易接口 1.99
独立风控系统产品2 V3.0 V3.1 开户接口 1.2
独立风控系统产品1 V2.0 V2.1 行情接口 asdsada
独立结算系统产品
交易风控综合系统产品
独立风控系统产品2 V3.0 V3.1 结算接口 1.02234
交易风控结算系统产品1
独立风控系统产品1 V2.0 V2.1 PSIS接口 1.02
独立风控系统产品1 V2.0 V2.1 交易接口 1.0
独立风控系统产品2 V3.0 V3.1 行情接口 asdsada
独立风控系统产品2 V2.0 V2.1 行情接口 aaaaaaaaa
独立风控系统产品2 V2.0 V2.1 结算接口 1.02234
独立风控系统产品2 V2.0 V2.1 交易接口 1.0
交易结算综合类系统产品1
其他产品1
独立风控系统产品1 V2.0 V2.2 开户接口 1.2
独立风控系统产品1 V2.0 V2.1 开户接口 1.2678
独立风控系统产品2 V3.0 V3.2 开户接口 1.2
独立交易系统产品1
独立风控系统产品2 V2.0 V2.1 PSIS接口 1.02
独立风控系统产品2 V2.0 V2.1 开户接口 1.2
独立风控系统产品2 V1.0