
获取包含点赞状态的文章列表
需求是要在文章列表中同时查询出文章是否被点赞。
表结构:
- 文章表:包含文章 id、作者 id、文章 id、文章名称
- 喜欢表:包含点赞记录 id、用户 id 和被点赞的文章 id
查询语句:
select id, userid, workid, name,
(select count(*) from 喜欢表 as l where l.workid = a.workid) as like
from 文章表 as a步骤解释:
- 查询文章表,获取文章 id、作者 id、文章 id、文章名称。
- 在外层查询语句中,使用子查询 (select count(*) from 喜欢表 as l where l.workid = a.workid) 计算每篇文章被点赞的次数,并为其创建一个名为 like 的别名。
特殊情况:
如果需要判断当前用户是否喜欢某篇文章,则需要进行两次查询:
- 查询文章列表,获取文章 id。
- 查询喜欢表,获取这些文章 id 的点赞数据。
然后,可以自行计算整合数据,判断当前用户是否喜欢每篇文章。










