Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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
Sql 如何在数据库Teradata中找到包含特定列名的所有表?_Sql_Database_Teradata - Fatal编程技术网

Sql 如何在数据库Teradata中找到包含特定列名的所有表?

Sql 如何在数据库Teradata中找到包含特定列名的所有表?,sql,database,teradata,Sql,Database,Teradata,我想在整个数据库中查找2-3个不同的列名,并列出所有包含这些列的表。有简单的问题吗 我看到了,这在这里不起作用,因为据我所知,TD没有计划,但我发现了 并尝试了以下代码: SELECT TableName FROM DBC.COLUMNS WHERE DatabaseName = 'DB_NAME' and ColumnName in ('col1', 'col2') 但肯定必须使用子查询来获取TableName,因为DBC.COLUMNS没有该字段。还有其他想法吗?您正在寻找: SELECT

我想在整个数据库中查找2-3个不同的列名,并列出所有包含这些列的表。有简单的问题吗

我看到了,这在这里不起作用,因为据我所知,TD没有计划,但我发现了

并尝试了以下代码:

SELECT TableName
FROM DBC.COLUMNS
WHERE DatabaseName = 'DB_NAME' and
ColumnName in ('col1', 'col2')

但肯定必须使用子查询来获取TableName,因为DBC.COLUMNS没有该字段。还有其他想法吗?

您正在寻找:

SELECT tablename
FROM dbc.columnsV
WHERE ColumnName in ('col1', 'col2')

此查询适用于我:

SELECT  DatabaseName,
        TableName,
        CreateTimeStamp,
        LastAlterTimeStamp
FROM    DBC.TablesV
WHERE   TableKind = 'T'
and     DatabaseName = 'YOUR_SCHEMA'
ORDER BY    TableName;

DBC.Columns
似乎就是您要找的:我更新了我的问题,我的主管说子查询必须是used@Rocketq . . . 当然,
tablename
在表中。被告知使用子查询会适得其反。你说得对,它在表中,我选中了
show select*from DBC.Columns
请将视图更改为DBC.ColumnsV,DBC。Columns是旧的旧版本,自TD12以来已弃用。从TD14.10开始,如果使用的对象名称超过30个字符,则可能返回错误的结果…@dnoeth。非常感谢。