【问题标题】:Query between three tables三张表之间的查询
【发布时间】:2015-10-20 10:30:34
【问题描述】:

我有 3 张桌子。

images - image_id .. 等

users - user_id .. 等

favs - user_id, image_id

所以现在我想当用户登录他的帐户并点击按钮My favs 来显示他所有的收藏。这里对mysql的查询是什么?

【问题讨论】:

标签: mysql sql


【解决方案1】:
select images.image_id, ... from images
inner join favs on images.image_id = favs.image_id
inner join users on users.user_id = favs.user_id
where users.user_id = [...]

如果您不需要来自users 的任何数据,则不需要最后的连接,您可以将最后一行更改为where favs.user_id = [...]

这可能有助于您了解哪些联接做什么:

【讨论】:

  • 我在此加入时出错inner join favs on images.user_id = favs.image_id ->` 'on Clause' 中的未知列 'images.user_id' .. 我在表 images 中没有 user_id 列/跨度>
  • @John:将 images.user_id = favs.image_id 更改为 images.image_id = favs.image_id
  • 抱歉,我已将查询编辑为inner join favs on images.image_id = favs.image_id
  • 试过了,也没用。但就像这样工作images.image_id = favs.user_id
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-07
  • 2017-09-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多