[英]Join multiple mysql tables
我在数据库中有三个表: makers
, parts
, transfers
。
Makers
makerid,stampname
Parts
是categories,name
variations
是id, provider, recipient, part
Provider
是makers/makerid
的指针, recipients
。
我需要查询,以便我的结果显示友好名称与编码/简化的数据库ID。
我已经尝试了几种联接,但是我的查询是:
select makers.stampname as giver, makers.stampname as takers
from makers
left join variations prov on prov.provider=makers.makerid
left join variations recp on recp.recipient=makers.makerid limit 5;
在两列中产生相同的名称。 如果provider
被makerid
24和recipient
是makerid
10,我如何才能查询到与重合回应stampname
从makers
分贝?
抱歉,看起来这是需要更好地了解别名的问题。 这完美地工作:
select variations.date,provider.stampname as provname ,
recipient.stampname as recipname,
parts.name from variations
left outer join
makers provider on variations.provider = provider.makerid
left outer join
makers recipient on variations.recipient = recipient.makerid
left join categories parts on variations.part = parts.catid
where variations.provider = "20"
and
variations.date="1944";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.