在 SQL Server 中查找所有包含特定列名的表
原文:https://www . geesforgeks . org/find-all-tables-包含特定列名的 sql-server/
作为一名 SQL 数据库管理员,我们可能需要编写一个 SQL 查询来查找包含特定列名的所有表。 下面的截图会给大家展示数据库里面的表' SQL_DBA
-
Find all tables that contain a specific column name in SQL Database : In the below example, we are using INFORMATION_SCHEMA.COLUMNS to get the table names where the column name is like ‘%Err%’.
查询–
sql SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, ORDINAL_POSITION as org_pos, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH as CML FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME like '%Err%' ORDER BY TABLE_NAME
输出–
表 _ 目录 表 _ 架构 表名 列名 组织位置 数据类型 currentmodelogic 电流型逻辑的 SQL_DBA dbo 错误统计 错误日期 six 日期时间 空 SQL_DBA dbo 错误统计 恐怖毒气 five 可变长字符串 -1 -
查找包含特定列名的所有表: 在本例中,我们使用 sys.column 获取列信息,sys.tables 获取数据库表名。
查询–
SELECT col.name AS [Column Name], tab.name AS [Table Name]
FROM sys.columns col
INNER JOIN sys.tables tab
ON col.object_id = tab.object_id
WHERE col.name LIKE '%Name%'
ORDER BY [Table Name], [Column Name]
输出–
列名 | 表名 |
---|---|
数据库名 | 错误统计 |
SQLInstanceName | 错误统计 |
统计时间 | 错误统计 |
数据库名 | tbl_QualifiedDBs |
数据库名 | 统计数据更新传输 |
SQLInstanceName | 统计数据更新传输 |
统计时间 | 统计数据更新传输 |
表名 | 统计数据更新传输 |
数据库名 | 待定 _ 统计 _ 更新 _ 传输 _ 发布 |
SQLInstanceName | 待定 _ 统计 _ 更新 _ 传输 _ 发布 |
统计时间 | 待定 _ 统计 _ 更新 _ 传输 _ 发布 |
表名 | 待定 _ 统计 _ 更新 _ 传输 _ 发布 |
版权属于:月萌API www.moonapi.com,转载请注明出处