Locate the table containing the specified column name
The goal of this task is to determine which tables contain columns that meet a specific criteria, i.e. columns whose names match a pattern (e.g. "%myName%"). To do this, you can use two methods:
Method 1: Search table only
Using Transact-SQL, you can search for matching column names in a table using the following statement:
<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>
Method 2: Search tables and views
Alternatively, to search in both tables and views, you can use the following query:
<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>
By executing either of these two queries with appropriate parameter values, you can easily identify all tables and/or views that have column names that match the specified pattern.
The above is the detailed content of How Can I Find Tables Containing Columns with a Specific Name Pattern?. For more information, please follow other related articles on the PHP Chinese website!