根据 SQL 中的列名称模式定位表
有效管理大型 SQL 数据库通常需要识别包含与特定命名约定匹配的列的表。 本文介绍了两种实现此目的的方法。
方法 1:仅针对表
此方法仅关注表定义以查找与特定模式匹配的列。 以下 T-SQL 示例演示了这一点:
<code class="language-sql">SELECT c.name AS ColumnName, SCHEMA_NAME(t.schema_id) + '.' + t.name AS TableName FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id WHERE c.name LIKE '%MyName%' ORDER BY TableName, ColumnName;</code>
方法 2:包括表和视图
这种更广泛的方法在表和视图中搜索符合指定模式的列。下面的查询说明了这一点:
<code class="language-sql">SELECT COLUMN_NAME AS ColumnName, TABLE_NAME AS TableName FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE '%MyName%' ORDER BY TableName, ColumnName;</code>
两个查询都返回一个表列表(以及第二种情况下的视图),其中包含与 '%MyName%'
模式匹配的列。 将 '%MyName%'
替换为您想要的图案。该技术对于审计、模式优化和依赖项跟踪等数据库管理任务非常有价值。
以上是如何在 SQL 中查找包含具有特定名称模式的列的表?的详细内容。更多信息请关注PHP中文网其他相关文章!