如何通过SQL查询同时获取文章列表和点赞状态?

如何通过SQL查询同时获取文章列表和点赞状态?

在拉取文章列表时同时获取点赞状态

需求如下:

  1. 列出文章列表
  2. 获取每篇文章是否被用户点赞

对于给定的文章表和喜欢表:

文章表:

id userid workid name

喜欢表:

id userid workid

采用以下 sql 查询语句,可以在获取文章列表的同时获取点赞状态:

select id, userid, workid, name,      (select count(*) from 喜欢表 as l where l.workid = a.workid) as like      from 文章表 as a
登录后复制

此查询语句通过连接文章表和喜欢表,并统计特定文章 id 的喜欢记录数量,实现了获取点赞状态的功能。

如果是需要判断当前用户是否喜欢

在这种情况下,需要分两步进行查询:

  1. 第一次查询获取文章列表和文章 id。
  2. 第二次查询使用这些文章 id 获取喜欢数据。

然后在代码中结合这两个查询结果即可。

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容