在Vertica数据库中为表查找具有唯一约束的列名

时间:2018-07-04 14:03:23

标签: vertica

在Vertica数据库中,我想知道某个表的列,其中应用了约束“ Unique”。

示例:

CREATE TABLE dim1 (    c1 INTEGER,
    c2 INTEGER,
    c3 INTEGER,
  UNIQUE (c1, c2)
);

我想运行一个查询,在其中输入表“ dim1”的名称,结果将为“ c1,c2”

有关唯一性的更多信息(链接的最后一行)https://my.vertica.com/docs/7.0.x/HTML/Content/Authoring/AdministratorsGuide/Constraints/UniqueConstraints.htm

1 个答案:

答案 0 :(得分:0)

通过查询系统目录(特别是V_CATALOG.CONSTRAINT_COLUMNS)很容易做到:

select column_name from V_CATALOG.CONSTRAINT_COLUMNS
where table_name = 'dim1' and constraint_type = 'u'