Oracle SQL 假脱机输出问题 - Headers 和破折号

Oracle SQL Spool Output Issues - Headers and Dashes

美好的一天,Stack Overflow 的朋友们。我对一些 SQL 代码有疑问,我为我的团队拥有的一些监管流程更新了这些代码。当我 运行 以下代码时,我的导出设置很好,但是,我得到了几行 header 行和几行什么都没有。有问题的 SQL 代码如下:

Set Heading On
Set Colsep '|'
Set NumFormat 999999999999.99
Set Echo Off
Spool 'X:\Cool\Drive\Space\Yo\Output.csv' Replace;

Select …
From …
Group By …
;

Spool Off;

输出看起来像这样:

A|      B|     C|...
-|-------|------|...

重复这些行的多个实例。

有没有人知道如何阻止这种情况发生,以及我如何 trim 输出以便在实际数据开始打印之前我们没有一堆空白?

谢谢!

你需要补充两点

SQL> set underline off
SQL> set pagesize 100

PAGESIZE 表示,在再次打印 header 列名称之前要打印多少行。如果您只想查看一次,请将页面大小设置为大于行数。

这是我的查询 -

SQL> set heading on
SQL> set colsep '|'
SQL> set numformat 999999999999.99
SQL> select sum(salary), department_id
  2  from employees
  3  group by department_id
  4  ;

如果我 运行 那 -

     SUM(SALARY)|   DEPARTMENT_ID
       105970.33|      100.00
        51214.47|       30.00
        14380.48|
       119020.33|       90.00
        39014.85|       20.00
        20532.81|       70.00
        41680.87|      110.00
       321867.32|       50.00
       626338.39|       80.00
        13355.08|       40.00
        59187.52|       60.00
         8228.13|       10.00

12 rows selected.