如何使用 SQL 查询文章列表并判断当前用户是否点赞?

如何使用 sql 查询文章列表并判断当前用户是否点赞?

如何查询文章列表并获取是否点赞

要同时查询文章列表和文章是否被点赞,我们需要使用外连接(left join)。

sql 查询语句

select
    a.id,
    a.userid,
    a.workid,
    a.name,
    (
        select
            count(*)
        from 喜欢表 as l
        where
            l.workid = a.workid
    ) as like
from
    文章表 as a
left join
    喜欢表 as l
on
    a.workid = l.workid

查询结果

返回的文章列表中将包含以下列:

  • id
  • userid
  • workid
  • name
  • like:该文章是否被点赞(0/1)

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

如果需要判断当前用户是否喜欢某篇文章,则需要在查询中添加当前用户 id。

修改后的 sql 查询语句

SELECT
    a.id,
    a.userid,
    a.workid,
    a.name,
    (
        SELECT
            COUNT(*)
        FROM 喜欢表 AS l
        WHERE
            l.workid = a.workid AND l.userid = 
    ) AS like
FROM
    文章表 AS a
LEFT JOIN
    喜欢表 AS l
ON
    a.workid = l.workid

以上就是如何使用 SQL 查询文章列表并判断当前用户是否点赞?的详细内容,更多请关注其它相关文章!