【发布时间】:2021-04-29 08:16:59
【问题描述】:
如果我的数据库有大量表,那么 -
有什么方法/查询可以搜索 - 哪个表包含特定的列名?
例如。我想知道包含par_token 列的表的名称。
我怎样才能做到这一点? - 我正在使用 SQL Management Studio 2014。
【问题讨论】:
标签: sql sql-server database
如果我的数据库有大量表,那么 -
有什么方法/查询可以搜索 - 哪个表包含特定的列名?
例如。我想知道包含par_token 列的表的名称。
我怎样才能做到这一点? - 我正在使用 SQL Management Studio 2014。
【问题讨论】:
标签: sql sql-server database
您可以使用sys 对象:
SELECT s.[name] AS SchemaName,
t.[name] AS TableName
FROM sys.schemas s
JOIN sys.tables t ON s.schema_id = t.schema_id
JOIN sys.columns c ON t.object_id = c.object_id
WHERE c.[name] = N'par_token';
【讨论】:
我建议使用INFORMATION_SCHEMA.COLUMNS。 INFORMATION_SCHEMA 视图是(相对)跨数据库可用的标准视图。而且,您不需要任何连接:
select c.*
from information_schema.columns c
where c.column_name = 'par_token';
【讨论】: