这是我的表结构
我有3张桌子:
- 会员表
- 评论表
- 评论如表
表结构可以在下图中找到:
表:会员
--------------------------------------------------------------------
user_id |full_name |email | password | image |join_date |
| | | | | |
---------------------------------------------------------------------
表:专辑_评论
--------------------------------------------------------------------
id |album_id |comment_text | comment_userid | post_date |active_bit |
| | | | | |
---------------------------------------------------------------------
表:comment_likes
--------------------------------------------------------------------
id |user_id |comment_id | post_date | | like_bit |
| | | | | |
---------------------------------------------------------------------
我想连接三个表并检索结果。这是我需要的:
我想返回最近20条评论,并检查当前登录的会员是否喜欢这20条评论中的任何一条评论。如果是,则将这些注释的状态位返回为 1,如果不是,则返回状态位 0。
谁能告诉我这个 SQL 查询是什么?
以下查询应该适合您。从 album_comments 中选择所需的列,根据 comment_id 将其与 comment_likes 结合起来,并检查 comment_likes user_id 是否等于您从 UI 发送的 user_id。 ORDER BY DESC 将返回最新评论,限制为 20。
Select |ac.Column1, ac.Column2...ac.Column-n|, cl.like_bit
FROM album_comments ac INNER JOIN comment_likes cl
ON ac.id = cl.comment_id AND cl.user_id = |screen user_id|
ORDER BY ac.id DESC LIMIT 20;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)