oracle中怎么列转行,oracle列转行方法总结
方法一:
----------------------------------------------------------------
---Muti-row to line(col2row)
----------------------------------------------------------------
create or replace type str_tab is table of varchar2(20);
/
grant all on str_tab to public;
create public synonym str_tab for str_tab;
create or replace function col2row(pv in str_tab) return varchar2
is
ls varchar2(4000);
begin
for i in 1..pv.count loop
ls := ls || pv(i);
end loop;
return ls;
end;
/
grant execute on col2row to public;
create public synonym col2row for col2row;
----------------------------------------------------------------
--multi column,convert one column base on another column, for example
----------------------------------------------------------------
create table t(id number,name varchar2(10));
insert into t values(1,'Joan');
insert into t values(1,'Jack');
insert into t values(1,'Tom');
insert into t values(2,'Rose');
insert into t values(2,'Jenny');
---------------------------------------------------------------
SQL(c3dev)>select * from t;
ID NAME
---------- ----------
1 Joan
1 Jack
1 Tom
2 Rose
2 Jenny
---------------------------
--column to row
---------------------------
SQL(c3dev)>column names format a80;
SQL(c3dev)>set line 120
SQL(c3dev)>select t0.id,
2 col2row(cast(multiset(select name from t where t.id = t0.id) as str_tab)) names
3 from (select distinct id from t) t0;
ID NAMES
---------- --------------------------------------------------------------------------------
&nbs
oracle中怎么列转行,oracle列转行方法总结相关推荐
- 【DB笔试面试639】在Oracle中,什么是多列统计信息(Extended Statistics)?
♣ 题目部分 在Oracle中,什么是多列统计信息(Extended Statistics)? ♣ 答案部分 Oracle优化器对于基数值的估算是否准确关系到能否生成最优的执行计划,而基数值估算的准确 ...
- oracle数据库insert into,oracle中insert into用法 oracle中insert如何带条件添加数据?
oracle insert into 脚本怎么写 INSE INTO BOOK(bookid,name,price) VALUES('100123','oracle ',54); 或者 INSE IN ...
- Oracle中加速索引创建或重建的方法
Oracle中加速索引创建或重建的方法 View more documents from Maclean Liu
- python如何复制oracle数据_Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法...
本文实例讲述了Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法.分享给大家供大家参考.具体实现方法如下: # Export Oracle database tables ...
- 在Oracle中执行动态SQL的几种方法------转载
在Oracle中执行动态SQL的几种方法 在一般的sql操作中,sql语句基本上都是固定的,如: SELECT t.empno,t.ename FROM scott.emp t WHERE t.de ...
- oracle中的guid,在Oracle中使用Guid
在Oracle中使用Guid 在Oracle中使用Guid 在Oracle中可以用SYS_GUID()来生成一个guid,相当于msSql中的newid(). 在Oracle9i和Oracle 10g ...
- Oracle中进行分页查询的三种方法
前言: 在mysql数据库中,可以很简单的使用limit实现分页查询,不过limit不能在Oracle中使用,不过Oracle中有替代品rownum,接下来使用rownum去实现表emp(Oracle ...
- oracle 汉字替换空格,oracle中replace替换回车换行空格的方法详解
本篇文章是对oracle中去掉回车换行空格的解决方法进行了详细的分析介绍,需要的朋友参考下 去除换行 update zhzl_address t set t.add_administration_nu ...
- Oracle中对现有表增加列
altertable Tablename add(column1 varchar2(20),column2 number(7,2)...) --Oracle中修改列名不可以,但是可以删除列,增加列 a ...
- oracle中怎么算奇数,oracle - 如何在oracle中获取奇数列 - SO中文参考 - www.soinside.com...
这不能简单地完成,但是可以使用Oracle数据字典和一些动态SQL. 要找出奇数列,您需要查看ALL_TAB_COLUMNS视图.列COLUMN_ID对列1,2,3进行排序.因此,这将在SCOTT.E ...
最新文章
- 固定上栏目html div,CSS_固定定位div(示例代码)
- Android——开源框架Universal-Image-Loader + Fragment使用+轮播广告
- linux c 服务程序,Linux C 后台服务程序单进程控制
- animation-fill-mode的一些思考
- js 实现文件上传 php,JS+php后台实现文件上传功能详解
- 计算机一级怎么加波浪下划线,Word快速添加下划线,双下划线条、波浪线、虚线一键搞定...
- html中列表怎么平移,css如何设置图片平移
- 好佳居软装十大品牌 软装类型对应着主人
- gmx solvate命令
- mysql交互式服务检测_MySQL innotop实时监测工具
- remix下ballot.sol调试
- cube 设置滴答定时器_基于STM32CubeMX的定时器设置
- B06 - 999、大数据组件学习③ - Hive
- ie浏览器地址栏中文参数提交服务器乱码分析
- Linux内核异常调试工具与方法
- Tesseract-OCR下载和安装
- okhttp上传图片和其他参数_阳光沙滩-Okhttp3 post上传文件的时候携带文件的参数的问题...
- NPOI读写Excel,Word,PPT文件
- 各国浏览器语言代码对照表
- mybatis一对多,多对一映射,collection和association标签的使用