这有点棘手。我需要从陆地中提取land_info中的值。但是我需要几个WHERE:partner.type ='Studie',land.land ='USA',sprog.sprog ='Engelsk',最后是udd.udd ='Bygning' ...伙伴和sprog表是多对多关系...因此在中间有一个名为partner_has_sprog的表..与partner和udd = partner_has_udd相同...
我已经使这个sql小提琴表... http://sqlfiddle.com/#!2/bdd7a4 ...基本上......我需要选择的是来自第二个合作伙伴(美国的一个)的land.land_info。任何帮助将不胜感激!
答案 0 :(得分:0)
是吗?
select l.land_info
from land l
join partner p on p.land = l.land
where p.landid = 2;
答案 1 :(得分:0)
如果您只想将所有表格链接在一起并不太困难,您只需要为每个表格使用INNER JOIN
:
SELECT
P.partid
,P.type
,L.land_info
,L.land
,UDD.udd
,SPROG.sprog
FROM partner AS P
INNER JOIN land AS L
ON P.landid = L.landid
INNER JOIN partner_has_udd AS PUDD
ON P.partid = PUDD.partner_partid
INNER JOIN udd AS UDD
ON PUDD.udd_uddid = UDD.uddid
INNER JOIN partner_has_sprog AS PSPR
ON P.partid = PSPR.partner_partid
INNER JOIN sprog AS SPROG
ON PSPR.sprog_sprogid = SPROG.sprogid
;
这是更新的SQL小提琴:http://sqlfiddle.com/#!2/29990f/2/0
您在SQL小提琴的Scheme部分中输入了一个拼写错误,并将partner_has_sprog
值插入sprog
表。