Mysql 使用多列连接连接3个表
我正在努力获得我所需要的正确语法,不知道是否有人可以帮助我 我有3个表:用户、owneditems和shopitems 我需要从用户那里获得用户ID和城市 从owneditems中,我需要获取用户ID和项目ID 从shopitems中,我需要获得id和城市信息Mysql 使用多列连接连接3个表,mysql,left-join,inner-join,Mysql,Left Join,Inner Join,我正在努力获得我所需要的正确语法,不知道是否有人可以帮助我 我有3个表:用户、owneditems和shopitems 我需要从用户那里获得用户ID和城市 从owneditems中,我需要获取用户ID和项目ID 从shopitems中,我需要获得id和城市信息 owneditems和用户上的用户ID将相同 owneditems上的itemid将与shopitems上的id相同 城市对shopitems和用户的影响将是相同的 我所追求的是找出用户所在的城市,并将他们在该城市拥有的物品联系起来
owneditems和用户上的用户ID将相同 owneditems上的itemid将与shopitems上的id相同 城市对shopitems和用户的影响将是相同的
我所追求的是找出用户所在的城市,并将他们在该城市拥有的物品联系起来 我尝试使用的语法是
SELECT users.city, users.id, shopitems.city, shopitems.id, owneditems.itemid, owneditems.userid
FROM users, shopitems, owneditems
WHERE users.city = shopitems.city
AND owneditems.itemid = shopitems.it
AND users.id = owneditems.userid
现在还不清楚您想做什么,但是您是否尝试过使用
左连接
而不是内部连接
:
select u.city,
u.id,
s.city,
s.id,
o.itemid,
o.userid
from users u
left join owneditems o
on u.id = o.userid
left join shopitems s
on u.city = s.sity
and o.itemid = s.itemid
我想我最终得到了它从用户、shopitems、owneditems中选择users.city、users.id、shopitems.city、shopitems.id、owneEdItems.userid,其中users.city=shopitems.city和owneEdItems.id=shopitems.id和users.id=owneEdItems.userid和users.city=1和users.id=93074