gpt4 book ai didi

mysql - 获取对帖子投票的用户

转载 作者:行者123 更新时间:2023-12-01 00:41:25 25 4
gpt4 key购买 nike

我有两张 table

|posts|          |votes|
---- ----
id id
content post_id
user_id
voted

本质上,我要做的是检索数据库中的所有帖子,并使用一个额外的字段 voted 显示用户是否对该帖子投票。

所以我想从 posts 中提取 content 并从 votes 中提取 voted

假设当前用户有 id 2。我尝试做类似的事情(伪 SQL 语法)

SELECT 
posts.content,
votes.voted
FROM
posts
LEFT JOIN votes ON posts.id = votes.post_id
WHERE votes.user_id = 2

这在用户已经投票的帖子上工作正常,并且在投票表中有匹配的记录,但是用户没有投票的帖子将不会显示,这是有道理的,但不要我不知道如何规避这一点,我希望 voted 在这种情况下为 NULL。有什么解决方法吗?

最佳答案

通过检查 WHERE 子句中的 votes.user_id,您有效地将您的联接转换为 INNER JOIN.

您可以将其作为连接的子句移动,例如:

SELECT      posts.content, 
votes.voted

FROM posts

LEFT JOIN votes
ON posts.id = votes.post_id
AND votes.user_id = 2

关于mysql - 获取对帖子投票的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31321463/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com