求一段查询的SQL语句联查三张表
有一张表tb_production,其中有3个字段id(整数自增主键),num6(char(12)),num1(char(2)),另有2张表tb_relate46和tb_...
有一张表tb_production,其中有3个字段id(整数自增主键),num6(char(12)),num1(char(2)),另有2张表tb_relate46和tb_relate636,tb_relate46表中有2个字段,num4(char(8),主键)和num6(char(12)),tb_relate636表中也有2个字段,num6(char(12),主键)和num36(char(72))。我想用tb_production表中的num6字段的所有数组在tb_relate46表中查出所有num6字段对应的num4字段数据,再用这些num4字段的数据取在tb_relate46中的num6字段数据,再用这些num6字段数据从tb_relate636表中取num36中字段数据,最后用数据表显示出product字段和num36字段的数据。
请给出实现改功能的SQL/T-SQL语句。
说错了,不是product字段,是tb_production表的num6字段 展开
请给出实现改功能的SQL/T-SQL语句。
说错了,不是product字段,是tb_production表的num6字段 展开
4个回答
展开全部
product字段在那张表中?
LZ说的num6->num4,num4->num6,num6->num36的连接就相当于tb_production.num6 = tb_relate46.num6 and tb_relate46.num6 = tb_relate636.num6是一样的,不用连出去在连回来。
select num36
from tb_production,tb_relate46,tb_relate636
where tb_production.num6 = tb_relate46.num6 and tb_relate46.num6 = tb_relate636.num6
就可以取出你说的num36的值了,但是你说的product字段这3张表中没有,就不知道怎么取到他了。
select tb_production.num36,tb_production.num6
from tb_production,tb_relate46,tb_relate636
where tb_production.num6 = tb_relate46.num6 and tb_relate46.num6 = tb_relate636.num6
LZ说的num6->num4,num4->num6,num6->num36的连接就相当于tb_production.num6 = tb_relate46.num6 and tb_relate46.num6 = tb_relate636.num6是一样的,不用连出去在连回来。
select num36
from tb_production,tb_relate46,tb_relate636
where tb_production.num6 = tb_relate46.num6 and tb_relate46.num6 = tb_relate636.num6
就可以取出你说的num36的值了,但是你说的product字段这3张表中没有,就不知道怎么取到他了。
select tb_production.num36,tb_production.num6
from tb_production,tb_relate46,tb_relate636
where tb_production.num6 = tb_relate46.num6 and tb_relate46.num6 = tb_relate636.num6
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select a.num6,b.num36 from tb_production a,tb_relate636 b
where a.num6=b.num6 and
exists(select * from tb_relate46 where num6=a.num6 and num6=b.num6)
where a.num6=b.num6 and
exists(select * from tb_relate46 where num6=a.num6 and num6=b.num6)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select product,num36
from tb_production
inner join tb_relate46
on tb_production.num6=tb_relate46.num6
inner join tb_relate636
on tb_relate46.num6=tb_relate636.num6;
你描述的不知道有没有问题,第一次从tb_relate46中取了一次数据,然后又取了一次。
请问你数据库经验几年?方便回答者把握难度。
from tb_production
inner join tb_relate46
on tb_production.num6=tb_relate46.num6
inner join tb_relate636
on tb_relate46.num6=tb_relate636.num6;
你描述的不知道有没有问题,第一次从tb_relate46中取了一次数据,然后又取了一次。
请问你数据库经验几年?方便回答者把握难度。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
问题说的不是很明白,你试下这句,如果不行可以hi我详谈
select p.num6,t636.num36
from tb_production p,tb_relate46 t46,tb_relate636 t636
where p.num6=t46.num4 and t46.num6=t636.num6
select p.num6,t636.num36
from tb_production p,tb_relate46 t46,tb_relate636 t636
where p.num6=t46.num4 and t46.num6=t636.num6
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询