首页 > 解决方案 > 我需要如何在表格中查找精确匹配

问题描述

我的数据库中有 SYS.OBJECTS 类型的表(即 Dbo.tables),其中有这样的数据

样本数据

Tbl_name    Col_names   Query
H_Website   Website_ID  SELECT W.WebSiteID, C.Channel_ID FROM   Enroll W LEFT JOIN CHANNEL_TYPE C ON W.ChannelNAME = C.ChannelNAME

如果我执行查询列中的查询,我将从 Enroll table 获取网站 ID。所以实际上登记表有网站 ID 列。如何在查询列中查找网站 ID 并获取表名(注册具有网站 ID 列名的表)

我需要得到的输出

Tbl_name   Col_names   Source_Tbl
H_Website  Website_ID   Enroll

输出我需要得到它,我无法继续前进。在这方面启发我。

谢谢

标签: sqlsql-servertsql

解决方案


use test_db

SELECT      t.name AS 'TableName'
            ,c.name  AS 'ColumnName'

FROM        sys.columns c
JOIN        sys.tables  t   ON c.object_id = t.object_id

where   t.name like '%tbl_name%'

ORDER BY    TableName
            ,ColumnName;

推荐阅读