Sql 查找我需要连接的所有表以获得两个表之间的关系
我正在使用SQL Server 2012。我想连接两个没有列的表,我可以连接它们,我如何找到所有的表来连接这两个表 例如:我需要将Sql 查找我需要连接的所有表以获得两个表之间的关系,sql,sql-server,join,sql-server-2012,Sql,Sql Server,Join,Sql Server 2012,我正在使用SQL Server 2012。我想连接两个没有列的表,我可以连接它们,我如何找到所有的表来连接这两个表 例如:我需要将表A连接到表D,为此我需要将A连接到B,然后连接到C,最后连接到D 我的问题是:我是否可以在数据库中数千个表中找到B和C,而不必逐表搜索 非常感谢, Ohad您可以做一些事情来帮助您的事业,但在大多数情况下,没有直接的方法,您需要了解数据库的结构和表的用途。此外,基于数据库的设计,您可能很难直观地找到答案,您可能只需要从熟悉数据库设计的人那里获得指导。不管: 表格A和
表A
连接到表D
,为此我需要将A
连接到B
,然后连接到C
,最后连接到D
我的问题是:我是否可以在数据库中数千个表中找到B
和C
,而不必逐表搜索
非常感谢,
Ohad您可以做一些事情来帮助您的事业,但在大多数情况下,没有直接的方法,您需要了解数据库的结构和表的用途。此外,基于数据库的设计,您可能很难直观地找到答案,您可能只需要从熟悉数据库设计的人那里获得指导。不管: 表格A和D中的字段: 您可以查看表中的主字段或唯一字段,以确定哪些其他表可能链接到这些表。通常,它们的命名方式与其他表相匹配,您可以知道它们来自哪个表 信息\u架构视图 您可以使用information_schema.tables和information_schema.column视图在整个数据库中轻松搜索表和列的名称,并将搜索范围缩小到较少的表。假设:
如果您需要有关更多详细信息的帮助,请告诉我。添加一些示例表数据和预期结果。(对于所有1000个表来说……可能是一个设计问题!)两个任意表之间完全可能(通常)存在多个外键和路径。因此,没有一种方法可以找到“表之间的路径”。“我不知道有什么方法可以做到这一点”是比“没有办法做到这一点”更安全的表达方式……因为通常有一种方法,你只是碰巧不知道而已!:)