sql多表关联查询

发布网友 发布时间:2022-04-22 04:24

我来回答

6个回答

热心网友 时间:2022-04-07 20:03

所有信息,无论你使用什么关联都可以,join/ left join/right join/full join

从你写的表结构看,表D表示个A表、B表、C表的关系(除非表D还有其他三张表没有的信息),不需要加入关联的
select *
from A
left join B on A_user_id=B_id
left join C on A_device_id=C_id

热心网友 时间:2022-04-07 21:21

首先,你要确定你的表的维度,如果合成的表以A.ID为主键,那么就以A表为主表,其他的表做左关联,关联条件你已经写的很清楚了,从你的逻辑上看,你的D表为关系表,所以D表的字段在其他几个表中都有,没必要再显示了,当然你可以用它作为过滤条件,不知道你是不是这个意思,

select A.*,B.b_name,C.c_name
from A
left join B 
    on A_user_id=B_id
left join C 
    on A_device_id=C_id

热心网友 时间:2022-04-07 22:56

用SELECT对多表关联进行查询。

SQL是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

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

热心网友 时间:2022-04-08 00:47

最基本的表关联就行啊,inner join 或者left join
select *
from D
inner join A on D.D_id=A.A_id
inner join B on D.D_user_id=B.B_id
inner join C on D._device_id=C.C_id

热心网友 时间:2022-04-08 02:55

select a.*,b.*,c.*,d.* from A表 a,B表 b,C表 c,D表 d
where a.a_id = b.b_id and a.a_device_id = c.c_id and a.a_id = d.d_id and b.b_id = d.d_user_id
and c.c_id = d.d_device_id

热心网友 时间:2022-04-08 05:20

select * from a a left join b b on a_user_id=b_id left join c c on a_cevice_id=c_id left join d d on d_id=a_id and d_user_id=b_id and d_device_id=c_id

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com