如何同时查3个数据库的数据

如何同时查3个数据库的数据,第1张

如果是同一个实例的话,可以使用 select * from db1.dbo.tbtest a left join db2.dbo.tbtest b on a.id=b.id left join db3.dbo.tbtest c on a.id=c.id 的方式进行查询。

如果是不同实例,可以创建链接服务器,查询特定服务器中的数据。类似于 SVR1.DB1.DBO.TBTEST 的形式引用目标服务器的数据库表

看你的表结构,应该是表1和表2通过size_id关联,表1和表3通过type_id关联。

查询的SQL是:

至于增删改,你最好还是一条一条来,不要关联来做。

sql结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。

1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言(ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。

1、SQL语句:select u.*,r.*,r.id rid

from user u left join sys_user_role sur  on u.id = sur.useridleft join sys_role r  on sur.roleid = r.id

图片:(表名截图)

请点击输入图片描述

请点击输入图片描

注1:user(用户表),sys_role(角色表),sys_user_role(关系表)。

表1:user(下图)

请点击输入图片描述

请点击输入图片描述

表2:sys_role(下图)

请点击输入图片描述

请点击输入图片描述

表3:sys_user_role(下图)

请点击输入图片描述

请点击输入图片描述

算了,建表语句也给你们了,你们自己测试,这样更详细,(程序员)多动手,比什么都好。(这里的 界面 对写代码不太友好,我放博客里了,自己复制粘贴测试使用就行)

sql语句地址:网页链接

2、SQL语句解释:

select a.*,b.*

from a表 a left join b表 b on a.id = b.aid

left join c表 c on b.cid = c.id

注2:此语句适合a表与c表连接,b表是关系表的情况。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9242020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存