首页 新闻 搜索 专区 学院

SQL表查询多表查询

0
悬赏园豆:100 [已解决问题] 解决于 2020-04-21 18:08

我有三张表,表1如下:

表里第2列,第3列 是一个编号,这两个编号在另外两张表里与其名称对应,现在想查询本表, 在查询集合里,通过编号找到另外两张表里对应的名称,并在本查询集合里将编号替换成对应名称,(只是更改查询集合中的信息,不是改数据库里的信息),然后将本查询集合绑定到datagridview控件中,请问查询语句改怎么写呢?

无敌黑旋风的主页 无敌黑旋风 | 初学一级 | 园豆:112
提问于:2020-04-21 11:14
< >
分享
最佳答案
1

直接inner join 或left join就行了呀

收获园豆:50
风浪 | 老鸟四级 |园豆:2866 | 2020-04-21 11:25

select 表1.列1, 表1.列2..............., 表2.2列名称,表3.3列名称 from 表1
inner join 表2 on 表1.列2=表2.对应的ID
inner join 表3 on 表1.列3=表3.对应的ID

列1, 列2 , 用列的名称代上去就行

风浪 | 园豆:2866 (老鸟四级) | 2020-04-21 11:28

@风浪: 我试了下,查询出来ID没有变成我想要的名称啊

select Table_Relations.Turn_out_ID,Table_Relations.Turn_out_equipment_ID,Table_Relations.Euipment_Instalation,Table_Relations.Equipment_gap

from Table_Relations

inner join Table_Turn_out_equipment on Table_Relations.Turn_out_equipment_ID=Table_Turn_out_equipment.Turn_out_Equipment_ID

where Table_Relations.Turn_out_ID='T01'

用的这个查询

无敌黑旋风 | 园豆:112 (初学一级) | 2020-04-21 17:42

@风浪: 我用错列名了,可以查询哈,谢谢

无敌黑旋风 | 园豆:112 (初学一级) | 2020-04-21 18:07
其他回答(2)
1

SELECT
a.default_id,
b.tum_out_name AS tum_out_id,
c.tum_out_equipment_name AS tum_out_equipment_id,
a.euipment_instalation,
a.equipment_gap
FROM table1 a
LEFT JOIN table2 b ON a.tum_out_id=b.tum_out_id
LEFT JOIN table3 c ON a.tum_out_equipment_id=c.tum_out_equipment_id;

收获园豆:25
MaseratiLaventa | 园豆:257 (菜鸟二级) | 2020-04-21 15:06

表里面有数据,但是查询出来是NULL

select Table_Turn_out_equipment.Turn_out_Equipment_Name,
Euipment_Instalation,
Equipment_gap
from Table_Relations
left join Table_Turn_out_equipment on Table_Turn_out_equipment.Turn_out_Equipment_ID=Table_Relations.Turn_out_ID
where Table_Relations.Turn_out_ID='T01'

支持(0) 反对(0) 无敌黑旋风 | 园豆:112 (初学一级) | 2020-04-21 17:59

我用错列名了,可以查询哈

支持(0) 反对(0) 无敌黑旋风 | 园豆:112 (初学一级) | 2020-04-21 18:02
0

select a.default_id,b.turn_out_name,c.turn_out_equipment_name from {table_name} a
LEFT JOIN {sub_table_name_1} b on a.turn_out_id=b.turn_out_id
LEFT JOIN {sub_table_name_2} c on a.turn_out_equipment_id=c.turn_out_equipment_id

收获园豆:25
gt1987 | 园豆:1095 (小虾三级) | 2020-04-21 15:07
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册