繁体   English   中英

在数据库中如何查找表之间的连接

[英]In a database how to find connections between tables

我有一个数据库,它有很多表。 我想从链接它们的表中找到列名。 以便加入他们。

我只想知道表之间共有哪些列,所以我将知道如何继续进行连接并将它们连接以得到所需的结果。

有没有办法知道如何查找相似的列名,或者我必须检查每个表?

这是针对SQL Server 2008

sys.foreign_keys将包含与作为键显式相关的列的信息

除此之外,任何给定列对之间的架构中都没有结构关系。 如果应该将单独表上的任何两列连接在一起,但实际上在架构中并未将它们连接起来,那么架构失败比其他任何事情都更多。

没有机制可以揭示系统创建者打算关联哪些列,但实际上并未关联。

我个人最喜欢的是查看列名(如果FK方法不能成功显示)。

SELECT c.name AS column_
, t.name AS table_

FROM sys.columns c
INNER JOIN sys.tables t
ON c.object_id = t.object_id
WHERE c.name LIKE '%userID%'
ORDER BY t.name

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM