`

oracle行转列的通用实现

阅读更多
--oracle行转列的通用实现:  
--将'A,B,C'转换为:  
--A  
--B  
--C  
 

 
--实现方法
--1.定义一个类型  
create type type_row is table of varchar2(200);  
 
--2.创建函数  
create function split(p_list varchar2)  
  return type_row  
  pipelined IS 
  l_idx  pls_integer;  
  v_list varchar2(50) := p_list;  
begin 
loop  
    l_idx := instr(v_list, ',');  
    if l_idx > 0 then 
      pipe row(substr(v_list, 1, l_idx - 1));  
      v_list := substr(v_list, l_idx + length(','));  
    else 
      pipe row(v_list);  
      exit;  
    end if;  
end loop;  
return;  
end;  
 
--3.转换  
select column_value from table(split('A,B,C')); 
分享到:
评论

相关推荐

    oracle行转列

    3. 自定义SQL查询:在早期版本的Oracle或不支持Pivot的情况下,我们可以使用CASE语句、GROUP BY和聚合函数(如MAX、MIN)来实现行转列。通过在SELECT语句中使用CASE,我们可以根据条件为每一行创建新的列,并用聚合...

    通用ORACLE存储过程实现分页和查询

    分页通常通过LIMIT和OFFSET关键字在SQL查询中实现,但在Oracle中,我们使用ROWNUM伪列和子查询来达到相同的效果。ROWNUM是在查询结果集返回之前分配的一个整数值,表示每行的顺序。 创建一个通用的分页存储过程,...

    oracle和mssql分页存储过程-均通用

    Oracle中通常使用ROWNUM伪列实现分页。ROWNUM在查询时为每行生成一个唯一的数字,但需要注意的是,ROWNUM在查询时是立即计算的,因此不能直接用于分页,需要结合子查询或者连接来实现。例如,获取第一页(每页10条...

    oracle通用查询系统

    Oracle通用查询系统是一款基于Delphi开发的图形化数据库查询工具,专为用户提供了方便快捷的方式来探索和操作Oracle数据库。这款工具允许用户直观地查看数据库的表结构,包括字段信息、索引、触发器和约束,使得...

    oracle存储过程通用分页

    这篇博客“Oracle存储过程通用分页”将深入探讨如何利用Oracle存储过程来实现高效、灵活的分页功能。 首先,理解分页的基本概念至关重要。分页是将大型数据集分成若干小块,每次只加载一部分数据到内存中,这样可以...

    Oracle与SQL的分页实现

    本文将深入探讨Oracle与通用SQL在实现分页查询时的不同方法,以及它们各自的优缺点。 ### Oracle的分页实现 在Oracle数据库中,分页查询主要依赖于ROWNUM伪列和MINUS操作符。ROWNUM用于返回行号,而MINUS则用于从...

    基于JAVA、.NET、ORACLE、SQLSERVER的通用加解密实现.pdf

    其次,在Oracle数据库中,利用Java源码编程实现库内加解密操作,使数据库能够直接处理加密的数据列,从而在数据库层面上保护数据。类似地,在SQL Server中,通过CLR(Common Language Runtime,公共语言运行时)编程...

    Oracle数据库通用的分页存储过程

    Oracle数据库中实现分页查询主要有两种方法:ROWNUM和ROW_NUMBER()函数,这里我们主要讨论通过存储过程实现的通用分页方法。 一、ROWNUM方法 ROWNUM是Oracle数据库中的一个伪列,它会为每一行分配一个唯一的整数,...

    完美整合(通用分页)SSH+Oracle (需要自己加入jar包,只是源码)

    分页实现**:在SSH+Oracle的环境下,实现通用分页通常有以下几种方法: - 使用Hibernate的Criteria API配合 ScrollableResults 实现分页。 - 利用HQL(Hibernate Query Language)进行分页查询。 - 自定义SQL...

    Oracle通用分页存储过程

    在Oracle数据库中,实现分页查询通常涉及到`ROWNUM`伪列或者`FETCH FIRST n ROWS ONLY`(Oracle 12c及以上版本)和`OFFSET m ROWS`子句。`ROWNUM`是在查询结果集中生成的一个序号,而`FETCH`和`OFFSET`则可以用于...

    ORACLE环境下通用报表系统的设计.pdf

    在Oracle环境下设计通用报表系统是一项重要的任务,主要是为了满足用户对数据查询结果的格式化输出需求,以及应对不断变化的应用环境。在这个系统中,Oracle数据库作为核心存储平台,提供了高效稳定的数据管理能力。...

    Oracle9i 数据库通用文档附录

    3. **内容概述**:尽管具体章节和内容未详细列出,但可以推断此附录包含了对Oracle9i数据库核心特性的补充说明,可能涉及数据库管理、性能优化、安全性增强等方面的更新或详细指导。 ### 使用限制 1. **使用范围**...

    oracle尚观培训文档

    - **通用函数**:如NVL、COALESCE等用于处理空值或返回特定值。 #### 四、从多表中查询数据 - **从多表中查询数据**:当需要从多个表中检索数据时,可以使用JOIN操作来关联这些表。 - **有效连接条件与笛卡儿积**...

    一个关于基于ssm,mysql(也含oracle方式)实现的分页查询.rar

    而Oracle数据库中没有直接的LIMIT和OFFSET,但可以通过ROWNUM伪列配合子查询来实现类似的功能。例如上述例子在Oracle中的实现: ```sql SELECT * FROM ( SELECT t.*, ROWNUM rn FROM table t WHERE ROWNUM ) ...

    Oracle11g从入门到精通2

    2.1 Oracle通用安装器 2.2 Oracle数据库软件的安装 2.3 Oracle数据库软件的卸载 2.3.1 停止所有的Oracle服务 2.3.2 用OUI卸载所有的Oracle组件 2.3.3 手动删除Oracle遗留的成分 2.4 Oracle的应用结构 ...

    Oracle常用重复建表,索引,序列,表列等通用方法封装

    这里我们将探讨如何实现这样的通用方法封装,并了解其在实际应用中的价值。 首先,`toos_package.sql`很可能是包含一系列数据库操作函数和过程的PL/SQL包定义。在Oracle中,包(PACKAGE)是一种组织PL/SQL代码的...

    ORACLE和SQL语法区别归纳

    - **NUMBER**: Oracle的通用数值类型,支持精度定义(P, S),其中P表示总位数,S表示小数位数。 - **NUMERIC/DECIMAL**: SQL Server中的对应类型,同样支持精度定义。 - **INT/INTEGER**: 两者都是整数类型,...

    Oracle XML开发手册

    通过《Oracle XML开发手册》,开发者可以深入理解Oracle如何管理和操作XML数据,以及如何利用Oracle的功能来实现高效的XML应用。无论是开发Web服务、构建集成系统还是进行数据交换,这份手册都是宝贵的参考资料。

    通用java程序批量导excel数据到oracle

    通过执行jar文件,输入oracle登录信息、需要导入的表名、excel文件路径,路径可以是文件夹或者文件,可实现递归导入指定文件夹下的所有excel文件,每个文件可以是多个sheet。 每个数据文件的格式必须一致,所有sheet...

    CSDN Oracle 版精华帖荟萃

    8. 行转列通用过程:在数据仓库和报表生成中常常需要进行行转列的操作,Oracle中的PL/SQL可以编写通用过程来实现这一需求。 9. dblink同步远程带blob字段的表:dblink是Oracle提供的一种数据库链接技术,用于实现...

Global site tag (gtag.js) - Google Analytics