函式FUN_GET_SPOOL_STRING_LHR的內容--spool匯出csv檔案格式
Oracle使用SQL*Plus生成html檔案參考: http://blog.itpub.net/26736162/viewspace-2149543/
Oracle如何使用spool匯出utf8字符集的文字檔案: http://blog.itpub.net/26736162/viewspace-2639287/
匯出 csv 檔案格式
儲存以下內容為 spoolcsv.sql:
set echo on set trimspool on set trimout on set linesize 4000 set pagesize 0 set sqlblanklines on set feedback off set serveroutput off set term off set echo off define data_path=E:\data col ymd new_value v_ymd select to_char(sysdate,'YYYYMMDDHH24MISS') ymd FROM dual; spool &data_path\result_&&v_ymd..csv SELECT substr(t.lie, 3) FROM (SELECT 0||','||'DEPTNO'||','||'DNAME'||','||'LOC' lie FROM dual a UNION SELECT replace(replace( 1||',' || REPLACE(DEPTNO,',','、')||',' || REPLACE(DNAME,',','、')||',' || REPLACE(LOC,',','、'),chr(10),''),chr(13),'') from SCOTT.DEPT) t; spool off exit ---命令列 --sqlplus lhr/lhr@orcl @f:\sql\spool\spool_csv.sql --SELECT fun_get_spool_string_lhr('SCOTT','EMP') FROM DUAL;
其中函式fun_get_spool_string_lhr如下所示:
CREATE OR REPLACE FUNCTION FUN_GET_SPOOL_STRING_LHR(P_OWNER VARCHAR2, P_TABLE VARCHAR2) RETURN VARCHAR2 AS ----------------------------------------------------------------------------------- -- Created on 2012/11/07 11:33:07 by lhr --Changed on 2012/11/07 11:33:07 by lhr -- function: /* drop table XB_COLS_LHR; Create Table XB_COLS_LHR( id number, lie varchar2(4000) );*/ ----------------------------------------------------------------------------------- V_RETURN VARCHAR2(32767); V_RETURN1 VARCHAR2(32767); V_RETURN2 VARCHAR2(32767); V_MAX VARCHAR2(255); V_TABLE VARCHAR2(255) := UPPER(P_TABLE); PRAGMA AUTONOMOUS_TRANSACTION; BEGIN SELECT COUNT(1) INTO V_MAX FROM DBA_TAB_COLS C WHERE C.TABLE_NAME = V_TABLE AND C.OWNER = P_OWNER; ---列 SELECT 'SELECT ' || 0 || '||'',' || TO_CHAR(WMSYS.WM_CONCAT(DECODE(T.COLUMN_ID, V_MAX, '''||''' || T.COLUMN_NAME || '''', '''||''' || T.COLUMN_NAME || '''||''') )) || ' lie FROM dual a ' INTO V_RETURN1 FROM (SELECT C.COLUMN_NAME, C.COLUMN_ID FROM DBA_TAB_COLS C WHERE C.TABLE_NAME = V_TABLE AND C.OWNER = P_OWNER ORDER BY C.COLUMN_ID) T; --表 SELECT 'UNION SELECT replace(replace( ' || 1 || '||'',' || TO_CHAR(WMSYS.WM_CONCAT(DECODE(T.COLUMN_ID, V_MAX, ''' || REPLACE(' || T.COLUMN_NAME || ','','',''、'')', ''' || REPLACE(' || T.COLUMN_NAME || ','','',''、'')||'''))) || ',chr(10),''''),chr(13),'''') from '|| P_OWNER||'.'|| V_TABLE INTO V_RETURN2 FROM (SELECT C.COLUMN_NAME, C.COLUMN_ID FROM DBA_TAB_COLS C WHERE C.TABLE_NAME = V_TABLE AND C.OWNER = P_OWNER ORDER BY C.COLUMN_ID) T; IF LENGTH(V_RETURN2) > 2000 THEN EXECUTE IMMEDIATE 'truncate table XB_COLS_LHR'; INSERT INTO XB_COLS_LHR VALUES (1, 'SELECT substr(t.lie, 3) FROM (' || V_RETURN1); INSERT INTO XB_COLS_LHR VALUES (2, V_RETURN2 || ') t;'); COMMIT; V_RETURN := '見表 select * from XB_COLS_LHR; '; ELSE V_RETURN := 'SELECT substr(t.lie, 3) FROM (' || V_RETURN1 || V_RETURN2 || ') t;'; END IF; RETURN V_RETURN; END FUN_GET_SPOOL_STRING_LHR; /
About Me
........................................................................................................................ ● 本文作者:小麥苗,部分內容整理自網路,若有侵權請聯絡小麥苗刪除 ● 本文在itpub( http://blog.itpub.net/26736162 )、部落格園( http://www.cnblogs.com/lhrbest )和個人weixin公眾號( xiaomaimiaolhr )上有同步更新 ● 本文itpub地址: http://blog.itpub.net/26736162 ● 本文部落格園地址: http://www.cnblogs.com/lhrbest ● 本文pdf版、個人簡介及小麥苗雲盤地址: http://blog.itpub.net/26736162/viewspace-1624453/ ● 資料庫筆試面試題庫及解答: http://blog.itpub.net/26736162/viewspace-2134706/ ● DBA寶典今日頭條號地址: ........................................................................................................................ ● QQ群號: 230161599 (滿) 、618766405 ● weixin群:可加我weixin,我拉大家進群,非誠勿擾 ● 聯絡我請加QQ好友 ( 646634621 ) ,註明新增緣由 ● 於 2019-04-01 06:00 ~ 2019-04-30 24:00 在魔都完成 ● 最新修改時間:2019-04-01 06:00 ~ 2019-04-30 24:00 ● 文章內容來源於小麥苗的學習筆記,部分整理自網路,若有侵權或不當之處還請諒解 ● 版權所有,歡迎分享本文,轉載請保留出處 ........................................................................................................................ ● 小麥苗的微店 : ● 小麥苗出版的資料庫類叢書 : http://blog.itpub.net/26736162/viewspace-2142121/ ● 小麥苗OCP、OCM、高可用網路班 : http://blog.itpub.net/26736162/viewspace-2148098/ ● 小麥苗騰訊課堂主頁 : https://lhr.ke.qq.com/ ........................................................................................................................ 使用 weixin客戶端 掃描下面的二維碼來關注小麥苗的weixin公眾號( xiaomaimiaolhr )及QQ群(DBA寶典)、新增小麥苗weixin, 學習最實用的資料庫技術。
........................................................................................................................ |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2641522/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- PHP 匯出 CSV 格式檔案PHP
- linux 下MySQL命令列匯出csv檔案格式LinuxMySql命令列
- java匯出CSV檔案Java
- php匯出csv格式PHP
- SQLite3 匯出 CSV 檔案SQLite
- 一次將資料匯出為 CSV 格式檔案時遇到的坑
- 匯出資料為csv格式
- PHP 匯出大資料 CSV 檔案PHP大資料
- ServiceNow如何匯出豎線分割的CSV檔案?
- 使用PHP原生匯出Excel和CSV檔案PHPExcel
- Mysql匯入csv檔案MySql
- MySQL 匯出資料為csv格式的方法MySql
- csv是什麼格式檔案 csv檔案是什麼意思
- 將dataGridView內容匯出到Excel檔案ViewExcel
- SQLServer匯入大CSV檔案SQLServer
- csv檔案用什麼開啟 csv是什麼格式檔案
- Excel/CSV 匯入匯出庫,支援大檔案,樣式設定,單元格合併Excel
- PHP匯出大量資料,儲存為CSV檔案PHP
- csv格式怎麼轉換成excel?csv格式轉換成excel格式檔案的方法Excel
- Oracle如何使用spool匯出utf8字符集的文字檔案Oracle
- python對json格式原檔案追加內容PythonJSON
- 將 SAP ABAP 內表內容本地匯出成 Excel 檔案試讀版Excel
- 匯出csv
- 解決PHP匯出CSV檔案中文亂碼問題PHP
- java檔案相關(檔案追加內容、檔案內容清空、檔案內容讀取)Java
- 檔案批次查詢複製匯出,按檔名批次查詢檔案,按檔案內容批次查詢檔案
- 使用go語言對csv檔案進行解析處理,匯入匯出。Go
- csv格式檔案在win10上如何開啟_win10怎麼開啟csv格式檔案Win10
- springboot-實現excle檔案匯出的單元格相同內容合併Spring Boot
- JavaScript 匯出csvJavaScript
- MySQL直接匯出CSV檔案,並解決中文亂碼的問題MySql
- office for Mac Excel匯入csv檔案亂碼MacExcel
- 修改以前寫的合同匯入CSV檔案程式碼
- Colab pydrive 匯入匯出csv(pandas)
- 【實戰教程】使用雲函式將資料表匯出為 Excel 檔案函式Excel
- flink的print()函式輸出的都是物件地址而非物件內容函式物件
- Java讀取本地檔案內容並輸出Java
- cat-合併輸出多個檔案的內容