对于此类问题,如何使用左连接编写 mySQL?

发布于 2024-10-21 02:21:50 字数 346 浏览 4 评论 0原文

如何使用左连接构建 mySQL 查询来解决此问题?

Feed Table
-id
-lastpost_id (The id of the user from USER TABLE who last posted)
-firstpost_id (The id of the user from USER TABLE who first posted)

User Table
-id
-name

我希望得到一张这样的桌子

Result 
-id
-lastpost_id
-lastpost_name
-firstpost_id
-firstpost_name

How do I construct the mySQL query using left-join for this problem?

Feed Table
-id
-lastpost_id (The id of the user from USER TABLE who last posted)
-firstpost_id (The id of the user from USER TABLE who first posted)

User Table
-id
-name

I wish to get a table like that

Result 
-id
-lastpost_id
-lastpost_name
-firstpost_id
-firstpost_name

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

口干舌燥 2024-10-28 02:21:50
select *, a.name as lastpost_name, b.name as firstpost_name from Feed f 
      left join user a on f.lastpost_id=a.id 
      left join user b on f.firstpost_id=b.id

技巧是左连接,然后将表别名为 a 或 b。这样您就可以对同一个表进行多个联接

select *, a.name as lastpost_name, b.name as firstpost_name from Feed f 
      left join user a on f.lastpost_id=a.id 
      left join user b on f.firstpost_id=b.id

The trick is to left join and then alias the table as a or b. That way you can make multiple joins to the same table

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文