[发明专利]一种基于Oracle数据库实现多行数据并为一行显示的方法在审
申请号: | 201510267046.4 | 申请日: | 2015-05-22 |
公开(公告)号: | CN104881460A | 公开(公告)日: | 2015-09-02 |
发明(设计)人: | 张来卿;徐震宇;季统凯 | 申请(专利权)人: | 国云科技股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 广东莞信律师事务所 44332 | 代理人: | 余伦 |
地址: | 523808 广东省东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 oracle 数据库 实现 行数 一行 显示 方法 | ||
1.一种基于Oracle数据库实现多行数据并为一行显示的方法,其特征在于:所述的方法步骤如下:
步骤一,利用“ROW_NUMBER()OVER(PARTITION BY......”为按“部门代码”汇总后的数据行添加组内序号;
步骤二,“SYS_CONNECT_BY_PATH”按组内序号相邻关系,为每一层进行不同行的“人员代码”叠加;
步骤三,再次利用“部门代码进行组内分组,但按第二步中的层次排倒序,增加调整后等级;
步骤四,取所有调整后等级为1的结果,即为所要求的数据行。
2.根据权利1要求所述的显示的方法,其特征在于:所述的多行数据指的是:保存了“部门”与“部门员工”的对应关系数据。
3.根据权利1或23所述的显示的方法,所述的方法的实现语句为:SELECT N_DEPT_CODE,TRANSLATE(LTRIM(text,'/'),'*/','*,')researcherList FROM(SELECT ROW_NUMBER()OVER(PARTITION BY N_DEPT_CODE ORDER BY N_DEPT_CODE,lvl DESC)rn,N_DEPT_CODE,text FROM(SELECT N_DEPT_CODE,LEVEL lvl,SYS_CONNECT_BY_PATH(C_EMPLOY_CODE,'/')text FROM(SELECT N_DEPT_CODE,C_EMPLOY_CODE as C_EMPLOY_CODE,ROW_NUMBER()OVER(PARTITION BY N_DEPT_CODE ORDER BY N_DEPT_CODE,C_EMPLOY_CODE)x FROM m_dept_employ_rel ORDER BY N_DEPT_CODE,C_EMPLOY_CODE)a CONNECT BY N_DEPT_CODE=PRIOR N_DEPT_CODE AND x-1=PRIOR x))WHERE rn=1 ORDER BY N_DEPT_CODE。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国云科技股份有限公司,未经国云科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510267046.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:元数据管理系统
- 下一篇:管理存储在仓库内的资源之间的关系