如何在 Oracle SQL Plus 中排列或格式化 table 结果

How to arrange or format the table results in Oracle SQL Plus

我开始学习 Oracle,并且浏览了不同类型的示例。但是从一开始我就有一个问题,我们如何在格式良好的视图中安排检索 table。我正在使用 SQL Plus。

我附上了获取输出方式的图像。我希望在适当的 table 视图中输出 table(Organized columns and rows)。

SELECT DISTINCT c.name,
                i.company.company AS stock_name,
                i.company.current_price AS cur_price,
                i.company.last_dividend AS last_devident,
                i.company.earning_pershare AS eps
  FROM client_table_c c, TABLE (c.investments) i

在 SQL*Plus 中,有 COLUMN 命令(可以缩写为 COL),它允许您格式化 。例如:

SQL> create table test
  2    (id     number,
  3     name   varchar2(50));

Table created.

SQL> insert into test values (1, 'Littlefoot');

1 row created.

SQL> select * From test;

        ID NAME
---------- ---------------------------------------
         1 Littlefoot

SQL> col name format a15
SQL> select * From test;

        ID NAME
---------- ---------------
         1 Littlefoot

SQL>

看到了吗? NAME 列现已缩短。

有关更多信息,请查看 Formatting SQL Plus reports(请随意阅读整个 SQL Plus 文档)。

P.S。很高兴您使用 SQL Plus。它要求您实际上知道您在做什么。 GUI 工具允许您单击此处并单击此处,而无需真正了解单击背后的内容以及您可以期待的结果。但是,一旦您习惯了使用 Oracle,请切换到 - 例如 - SQL Developer(Oracle 的免费 G​​UI 工具),它以更合适的方式显示查询结果,而无需手动调整输出为了使其可读)。

您可以执行以下操作以在一行中以更格式化的方式输出

SET LINESIZE 32000;
SET PAGESIZE 40000;

有关更多格式选项,请参阅Oracle Documentation