[发明专利]一种基于Oracle数据库实现多行数据并为一行显示的方法在审

专利信息
申请号: 201510267046.4 申请日: 2015-05-22
公开(公告)号: CN104881460A 公开(公告)日: 2015-09-02
发明(设计)人: 张来卿;徐震宇;季统凯 申请(专利权)人: 国云科技股份有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 广东莞信律师事务所 44332 代理人: 余伦
地址: 523808 广东省东*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 oracle 数据库 实现 行数 一行 显示 方法
【说明书】:

技术领域

发明涉及Oracle数据库技术领域,尤其是一种基于Oracle数据库实现多行数据并为一行显示的方法。

背景技术

Oracle是甲骨文公司的一款关系数据库管理系统。Oracle的最大列数是1000。

目前面临的主要问题有:

在使用Oracle数据库时,经常遇到需要将多行数据合并为一行数据的情况,但通常而言都是编写自定义多行文本合并函数,但是对支持的列数具有局限性。

发明内容

本发明解决的技术问题在于提供一种基于Oracle数据库实现多行数据并为一行显示的方法,解决了在使用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。

本发明的有益效果:本发明的方法可以实现Oracle数据库中需要将多行数据合并为一行数据的情况,并解决了对Oracle数据库列数的限制问题。

附图说明

下面结合附图对本发明进一步说明:

图1是本发明的流程图。

具体实施方式

如图1所示,本发明的具体步骤为:

步骤一,创建表结构如下:

NAME Null Type

------------------------ --------- -----

N_DEPT_CODE NOT NULL CHAR(6)--部门

C_EMPLOY_CODE NOT NULL VARCHAR2(20)--部门员工

步骤二,插入数据

此表保存了“部门”与“部门员工”的对应关系数据,一般而言,对于同一只部门而言,可能有多个员工,对其进行跟踪研究,需查询出每个部门和对应的员工(员工代码间,使用逗号分隔)。

例如有如下数据:

000101 zhanglq

000101 dingjf

000101 wenxi

步骤三,实现SQL步骤:

1、利用“ROW_NUMBER()OVER(PARTITION BY......”为按“部门代码”汇总后的数据行添加组内序号;

2、“SYS_CONNECT_BY_PATH”按组内序号相邻关系,为每一层进行不同行的“人员代码”叠加;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国云科技股份有限公司,未经国云科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510267046.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top