Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Search 如何在Vertica中搜索列名?_Search_Vertica - Fatal编程技术网

Search 如何在Vertica中搜索列名?

Search 如何在Vertica中搜索列名?,search,vertica,Search,Vertica,有谁知道Vertica中有一个方便的搜索列名的功能吗?从文档中看,似乎\d只查询表\u名称。我正在寻找类似MySQL的information_schema.columns的内容,但找不到关于类似元数据表的任何信息 谢谢 答案可能因您使用的Vertica版本而异 在最新版本5.1中,有一个列系统表。仅从在线文档来看,这里似乎是最有用的列及其类型: TABLE_SCHEMA VARCHAR TABLE_NAME VARCHAR DATA_TYPE VARCHAR 那会给你你需要的。如果您的版本没有

有谁知道Vertica中有一个方便的搜索列名的功能吗?从文档中看,似乎\d只查询表\u名称。我正在寻找类似MySQL的information_schema.columns的内容,但找不到关于类似元数据表的任何信息


谢谢

答案可能因您使用的Vertica版本而异

在最新版本5.1中,有一个列系统表。仅从在线文档来看,这里似乎是最有用的列及其类型:

TABLE_SCHEMA VARCHAR
TABLE_NAME VARCHAR
DATA_TYPE VARCHAR

那会给你你需要的。如果您的版本没有系统表,请告诉我您正在运行的版本,我会看看我们可以做什么。

在5.1中,如果您有足够的权限,您可以做什么

SELECT * FROM v_catalog.columns;
要访问专栏的信息,您需要加入一些内容

v_catalog.tables

将此python脚本包装到shell函数中,您将能够看到包含任意两列的所有表: 导入argparse

parser = argparse.ArgumentParser(description='Find Vertica attributes in tables')
parser.add_argument('names', metavar='N', type=str, nargs='+', help='attribute names')
args = parser.parse_args()


def vert_attributes(*names):
    first_name = names[0].lower()
    first = "select root.table_name, root.column_name from v_catalog.columns root "
    last = " where root.column_name like '%s' " % first_name
    names = names[1:]
    if len(names) >= 1:
        return first + " ".join([" inner join (select table_name from v_catalog.columns where column_name like '%s') q%s on root.table_name = q%s.table_name " % (name.lower(), index, index) for index,name in enumerate(names)]) + last
    else:
        return first + last

print nz_attributes(*tuple(args.names))

如果要在视图而不是表格中查找答案,请在v_catalog.view_列中搜索