【问题标题】:SHOW CRATE TABLE in Netezza Aginity在 Netezza Aginity 中显示创建表
【发布时间】:2021-11-10 15:49:17
【问题描述】:

什么是 Netezza SQL 中来自 MySQL 的等效命令 SHOW CREATE TABLE tbl_name

例如,我有包含这些列的 iris 表。

我的预期输出

使用带有 HeidiSQL ID 的 MySQL 添加屏幕截图

我需要一个等同于SHOW CREATE TABLE tbl_name 的语句,来自 MySQL.

【问题讨论】:

  • "我需要看看表是如何创建的" 比如,它最初是如何创建的?还是您只是在寻找当前存在的表的 DDL?
  • db2 有describe 如果我没记错的话,不确定 netteza 是否有相同的命令,给它一枪。
  • @esqew 我已经编辑了问题以更好地解释我的需求。

标签: sql netezza


【解决方案1】:

在 Netezza 上,没有简单的方法可以通过例如在系统视图上运行查询来获取表的 ddl。

替代方案:在 Netezza 主机上,如果您有访问权限,则可以使用命令行工具 nz_ddl_table (/nz/support/bin/nz_ddl_table)。这是一个复杂的脚本,它使用大量系统视图(如_v_relation_column)来构建 DDL。

【讨论】:

    【解决方案2】:

    您是否尝试过操作通用语法:

    CREATE [ TEMPORARY | TEMP ] TABLE [IF NOT EXISTS] <table>
    ( <col> <type> [<col_constraint>][,<col> <type> [<col_constraint>]…]
    [<table_constraint>[,<table_constraint>… ] )
    [ DISTRIBUTE ON { RANDOM | [HASH] (<col>[,<col>…]) } ]
    [ ORGANIZE ON { (<col>) | NONE } ]
    [ ROW SECURITY ]
    

    您可以从下面的 IBM 网站获得更多参考资料!

    IBM Netezza SQL

    【讨论】:

    • OP 正在询问如何基于预先存在的表以编程方式生成这样的查询。这没有回答问题。
    猜你喜欢
    • 1970-01-01
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-22
    相关资源
    最近更新 更多