首页 >数据库 >mysql教程 >如何查找包含具有特定名称模式的列的表?

如何查找包含具有特定名称模式的列的表?

Linda Hamilton
Linda Hamilton原创
2025-01-20 00:56:09999浏览

How Can I Find Tables Containing Columns with a Specific Name Pattern?

定位包含指定列名的表

本任务的目标是确定哪些表包含符合特定条件的列,即列名与模式(例如“%myName%”)匹配的列。为此,可以使用两种方法:

方法一:仅搜索表

使用 Transact-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>

方法二:搜索表和视图

或者,要同时在表和视图中进行搜索,可以使用以下查询:

<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>

通过使用适当的参数值执行这两个查询中的任何一个,您可以轻松识别所有拥有符合指定模式的列名的表和/或视图。

以上是如何查找包含具有特定名称模式的列的表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn