我有一个带有reason_id
外键的表。我需要将其映射回其主表。我在数据库中搜索了匹配/类似的列名,但我找不到该表。
我有一个与reason_id
相关联的值列表。我想搜索包含我的列表的表。任何帮助,将不胜感激。
以下是我为搜索列而运行的查询:
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 '%reason%'
答案 0 :(得分:0)
没有简单的方法可以在其他表格中找到相关数据。
我尝试使用ApexSQL Search或SQL Search等工具。两者都是免费的,任何这些都不会出错。
如果您只想使用SQL,则识别所有具有相同数据类型的表中的所有列。为此,请使用sys.columns, sys.types and sys.tables
次观看。一旦找到所有列,只需尝试开始为每个表编写查询,直到找到正确的列。
我会选择这样的东西
select COUNT(*)
from tableX
where tableX.matchedColumn in
(
-- take 100 or more random rows from the original table
-- if result gives you a number that is near to the number of values listed here then you are most probably on the right track
)