pen*_*ate 36 t-sql sql-server sql-server-2008 database-schema
我正在研究一个SQL Server 2008 Db,里面有很多表(大约200个).其中许多表包含名为"CreatedDate"的字段.我正在尝试使用此特定字段标识所有表架构.
是否有SQL查询来执行此操作?
Raj*_*ore 52
我会查询information_schema - 这个视图比底层表更具可读性.
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%create%'
Run Code Online (Sandbox Code Playgroud)
select object_name(c.object_id) as table_name
, schema_name(t.schema_id) as schema_name
from sys.columns c
join sys.tables t on c.object_id = t.object_id
where c.name=N'CreatedDate';
Run Code Online (Sandbox Code Playgroud)
如果您还需要其他表属性,它会变得更复杂,但您将引用对象目录视图,如sys.tables,sys.columns等.