我创建了一个假脱机命令,用于将数据从Oracle导出到csv中。文件。这是:
set echo off
set verify off
set feedback off
set heading on
set termout on
set pages 50000
set newpage none
spool Y:\Marketing\Nick\OptivoList\test.csv
Select EMAIL || ',' || ',' || GENDER
from Email_test;
spool off;
exit;
它创建类似的输出:
EMAIL,GENDER
-----------------
test1@test.com, M
test2@test.com, W
test3@test.com, M
问题 - 如何摆脱标题和数据之间的'----------'输出?
答案 0 :(得分:3)
有两种方式 -
例如,
SQL> set underline off
SQL> select empno, ename from emp;
EMPNO,ENAME
7369,SMITH
7499,ALLEN
7521,WARD
7566,JONES
7654,MARTIN
7698,BLAKE
7782,CLARK
7788,SCOTT
7839,KING
7844,TURNER
7876,ADAMS
7900,JAMES
7902,FORD
7934,MILLER
14 rows selected.
SQL>
您需要将 pagesize 设置为零。这将取消列标题并重复列标题。然后,使用 UNION ALL 语句应用自定义列名称。
例如,
SQL> set pagesize 0
SQL> SELECT 'EMPNO' ||' , '|| 'ENAME' FROM DUAL
2 UNION ALL
3 SELECT EMPNO||' , '||ENAME FROM EMP
4 /
EMPNO , ENAME
7369 , SMITH
7499 , ALLEN
7521 , WARD
7566 , JONES
7654 , MARTIN
7698 , BLAKE
7782 , CLARK
7788 , SCOTT
7839 , KING
7844 , TURNER
7876 , ADAMS
7900 , JAMES
7902 , FORD
7934 , MILLER
15 rows selected.
SQL>