Oracle行轉列函式
Oracle行轉列函式
1 需求
在實際開發中,行轉列函式可以把列值以逗號分隔起來,並顯示成一行。現要求利用一條sql語句獲得表emp中所有員工姓名,且要求在前臺頁面中作為一個字串出現,在這個字串中員工之間的姓名用逗號分隔開。
2 程式
create or replace function row2col(sqlString varchar2) return varchar2 as
begin
declare type cu_type is ref cursor;
cur_name cu_type;
tmp_name varchar2(20);
names varchar2(500);
begin
open cur_name for sqlString;
fetch cur_name into tmp_name;
while cur_name%found loop
names := names || tmp_name || ',';
fetch cur_name into tmp_name;
end loop;
return rtrim(names, ',');
end;
end row2col;
/
3 呼叫
select row2col('select ename from emp') result from dual;
這裡result即為內查詢得到臨時表的別名,也可以去掉
select row2col('select ename from emp') from dual;
4 執行結果
RESULT
--------------------------------------------------------------------------------
SMITH,ALLEN,WARD,JONES,MARTIN,BLAKE,CLARK,SCOTT,KING,TURNER,ADAMS,JAMES,FORD,MIL
LER
5 注意
引數sqlString必須是一個返回單列的SQL語句,否則,此函式將丟擲錯誤。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29485627/viewspace-1248678/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle行轉列的函式Oracle函式
- Hive行轉列函式Hive函式
- 【函式】Oracle12c 列轉行函式使用listagg函式Oracle
- Oracle 11g Pivot函式實現行轉列Oracle函式
- Oracle 11g使用UNPIVOT函式實現“列轉行”Oracle函式
- ORACLE單行函式與多行函式之五:轉換函式示例Oracle函式
- Oracle 11g 新聚集函式listagg實現列轉行Oracle函式
- 使用Oracle 11g函式Pivot實現資料聚合行轉列Oracle函式
- oracle 列轉行Oracle
- oracle列轉行Oracle
- oracle 分析函式(轉)Oracle函式
- Oracle分析函式{轉}Oracle函式
- oracle字串函式(轉)Oracle字串函式
- ORACLE函式大全(轉)Oracle函式
- Oracle字串函式--轉Oracle字串函式
- oracle 11g的行轉列、列轉行Oracle
- 用listagg函式分組實現列轉行函式
- sql內建函式pivot強大的行轉列功能SQL函式
- 列轉行聚合的簡單實現ORACLE WM_CONCAT LISTAGG函式Oracle函式
- oracle函式手冊(轉)Oracle函式
- (轉)Oracle隨機函式Oracle隨機函式
- 【轉】oracle instr函式Oracle函式
- Oracle的日期函式(轉)Oracle函式
- oracle行列轉換-行轉列Oracle
- oracle行列轉換-列轉行Oracle
- oracle 10g函式大全--轉換函式Oracle 10g函式
- ORACLE單行函式與多行函式之一Oracle函式
- ORACLE單行函式與多行函式之二:字元函式示例Oracle函式字元
- ORACLE單行函式與多行函式之三:數值函式Oracle函式
- ORACLE單行函式與多行函式之四:日期函式示例Oracle函式
- ORACLE單行函式與多行函式之六:通用函式示例Oracle函式
- Oracle行轉列、列轉行的Sql語句總結OracleSQL
- oracle中多列轉行Oracle
- ORACLE單行函式與多行函式之七:多行函式之分組函式示例Oracle函式
- ORACLE分析函式手冊(轉)Oracle函式
- Oracle OCP(05):轉換函式Oracle函式
- oracle over函式 詳解(轉)Oracle函式
- [轉]oracle日期函式集錦Oracle函式