【问题标题】:Suppress column names from Netezza Select statement禁止来自 Netezza Select 语句的列名
【发布时间】:2015-06-03 18:28:24
【问题描述】:

如何在 Netezza 中抑制 Select 语句的列标题和结尾?

Select Column_type from _v_sys_columns where table_name = 'EMP';

输出:

库尔斯 -------- EMP_NM EMP_SAL 行数(2)

我想禁止列名 (Columns ------) 和 row count(2)

感谢您的帮助。

【问题讨论】:

标签: linux netezza


【解决方案1】:

完成此操作的方法取决于您使用的界面/应用程序。从您提供的示例输出中不清楚您正在使用哪个,但我冒昧地猜测您正在使用 nzsql CLI。为此,您可以使用 \t 指令切换列标题的输出(以及尾随行数)。

TESTDB.ADMIN(ADMIN)=> select table_name, type_name from _V_SYS_COLUMNS where TABLE_NAME like 'EMP%';
 TABLE_NAME |       TYPE_NAME
------------+-----------------------
 EMPLOYEES  | BIGINT
 EMPLOYEES  | BIGINT
 EMPLOYEES  | CHARACTER VARYING(50)
 EMPLOYEES  | NUMERIC(20,2)
 EMP_NM     | BIGINT
 EMP_SAL    | BIGINT
(6 rows)

TESTDB.ADMIN(ADMIN)=> \t
Showing only tuples.

TESTDB.ADMIN(ADMIN)=> select table_name, type_name from _V_SYS_COLUMNS where TABLE_NAME like 'EMP%';
 EMPLOYEES  | BIGINT
 EMPLOYEES  | BIGINT
 EMPLOYEES  | CHARACTER VARYING(50)
 EMPLOYEES  | NUMERIC(20,2)
 EMP_NM     | BIGINT
 EMP_SAL    | BIGINT

或者,您可以使用“-t”选项调用 nzsql 以获得相同的效果。

【讨论】:

  • 感谢 ScottMc G。 “-t”选项正在工作。非常感谢您的帮助。
【解决方案2】:

您不能只省略标题(据我所知,不仅仅是使用NETEZZA)。您将不得不使用一些操作系统命令来去除多余的行。比如,如果你当前在LINUX 中运行NZSQL,那么你可能可以使用tailhead 命令来获得所需的输出

nzodbcsql -h <hostname> -d <db name> -u <userid>  -pw <password> -q "Select Column_type from _v_sys_columns where table_name = 'EMP'"| tail -3 | head -2 

【讨论】:

    【解决方案3】:
    nzsql -h ${host_name} -u ${user} -db ${dbname} -pw ${password} -A -t -c " 
     select table_name, type_name from _V_SYS_COLUMNS where TABLE_NAME like 'EMP%';"
    

    它将修剪标题并对齐输出

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-07
      • 2012-06-14
      • 2011-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多