如何从1列中选择值,其中不同表中的某些列=不同的值[关闭](How to select values from 1 column, where certain columns in different

编程入门 行业动态 更新时间:2024-10-27 02:25:27
如何从1列中选择值,其中不同表中的某些列=不同的值[关闭](How to select values from 1 column, where certain columns in different tables = different values [closed])

这有点棘手。 我需要从陆地中提取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(一个在美国)..任何帮助将不胜感激!

This is kind of tricky. I need to pull out values in land_info from land .. However I need several WHEREs: partner.type = 'Studie', land.land = 'USA', sprog.sprog = 'Engelsk' and lastly udd.udd = 'Bygning'... the partner and sprog tables are many to many relations.. and therefore have a table inbetween called partner_has_sprog .. the same with partner and udd = partner_has_udd...

I've made this sql fiddle with the tables.. http://sqlfiddle.com/#!2/bdd7a4 ... and basicly.. What I need to select, is the land.land_info from the 2nd partner (the one in USA) .. Any help would be greatly appreciated!

最满意答案

如果你只是想把所有表连接起来并不太困难,你只需要为每个表使用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 Fiddle的Scheme部分中输入了一个拼写错误,并将partner_has_sprog值插入到sprog表中。

If your just trying to link all the tables together it isn't too difficult, you just need to use an INNER JOIN for each:

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 ;

And here's the updated SQL Fiddle: http://sqlfiddle.com/#!2/29990f/2/0

You had a typo in the Scheme section of your SQL Fiddle and were inserting the partner_has_sprog values into the sprog table.

更多推荐

本文发布于:2023-08-07 15:49:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1464693.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:column   values   select   closed   tables

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!