I want to show all tables that have specified column name

前端 未结 8 2402
粉色の甜心
粉色の甜心 2020-12-12 23:49

How can I get a list of all the tables that have a specific column name?

相关标签:
8条回答
  • 2020-12-13 00:04

    --get tables that contains selected columnName

    SELECT  c.name AS ColName, t.name AS TableName
    FROM sys.columns c
    JOIN sys.tables t ON c.object_id = t.object_id
    WHERE c.name LIKE '%batchno%'
    

    its worked...

    0 讨论(0)
  • 2020-12-13 00:17
    select table_name
    from information_schema.columns
    where COLUMN_NAME = 'MyColumn'
    
    0 讨论(0)
  • 2020-12-13 00:21
    SELECT t.name AS table_name,
    SCHEMA_NAME(schema_id) AS schema_name,
    c.name AS column_name,*
    FROM sys.tables AS t
    INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID 
    WHERE c.name LIKE '%YOUR_COLUMN%' 
    ORDER BY schema_name, table_name;
    

    In depth article by SQL Authority

    0 讨论(0)
  • 2020-12-13 00:24

    You can find what you're looking for in the information schema: SQL Server 2005 System Tables and Views I think you need SQL Server 2005 or higher to use the approach described in this article, but a similar method can be used for earlier versions.

    0 讨论(0)
  • 2020-12-13 00:25

    Pretty simple on a per database level

    Use DatabaseName
    Select * From INFORMATION_SCHEMA.COLUMNS Where column_name = 'ColName'
    
    0 讨论(0)
  • 2020-12-13 00:25
    SELECT      T.TABLE_NAME, C.COLUMN_NAME
    FROM        INFORMATION_SCHEMA.COLUMNS C
                INNER JOIN INFORMATION_SCHEMA.TABLES T ON T.TABLE_NAME = C.TABLE_NAME
    WHERE       TABLE_TYPE = 'BASE TABLE'
                AND COLUMN_NAME = 'ColName'
    

    This returns tables only and ignores views for anyone who is interested!

    0 讨论(0)
提交回复
热议问题