【问题标题】:How to arrange or format the table results in Oracle SQL Plus如何在 Oracle SQL Plus 中排列或格式化表结果
【发布时间】:2019-01-12 11:47:24
【问题描述】:

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

我附上了一张我获得输出方式的图片。我希望在适当的表视图中输出表(有组织的列和行)。

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

【问题讨论】:

  • 投反对票的人请解释原因。提供一些理由,因为我真的是 oracle 新手,而不是 stackoverflow
  • set lin 2000 pages 0(如果你想要标题,用更大的数字替换)是我们使用的一些命令,对于格式化列,请参考下面的链接docs.oracle.com/cd/B19306_01/server.102/b14357/ch6.htm

标签: database oracle sqlplus


【解决方案1】:

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

SET LINESIZE 32000;
SET PAGESIZE 40000;

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

【讨论】:

  • @Ramesh 很高兴知道我能帮上忙。
【解决方案2】:

在 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 文档)。

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

【讨论】:

  • 这个还是不错的。但是很难通过提及列名来格式化每一列。无论如何谢谢你。我在这里找到了答案
猜你喜欢
  • 1970-01-01
  • 2021-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多