php - 从 SQL 中检索条目的相似计数

标签 php mysql sql database social-media-like

我一直在为一个条目数据库添加一个类似的功能......这是数据库的结构:

**Users**
user_id
user_name
etc.

**Entries**
entry_id
entry_content
etc.

**Likes**
user_id
entry_id

(比那复杂一点,有组/类别,但这应该可以很好地解释......)这是我目前正在使用的 SQL 查询:

SELECT 
entries.*,
DATE_FORMAT(entry_date, "%M %D, %Y") as entry_date,
groups.group_short_name,
users.user_name, users.user_id,
FROM entries 
INNER JOIN groups ON groups.group_id = entries.group_id 
INNER JOIN users ON users.user_id = entries.user_id 
ORDER BY entry_date DESC

我还尝试通过此查询检索每个条目的点赞数,并想知道这是否可能。我一直在尝试:

COUNT(DISTINCT likes.like_id) as likes

LEFT JOIN likes ON likes.entry_id = entries.entry_id

但我不认为这是正确的。我走远了吗?这可能吗?希望这一切都有意义。

提前感谢您的帮助。

最佳答案

给你的表别名,例如..

FROM entries e

然后添加列查询:

select e.*, (select count(*) from Likes where entry_id = e.entry_id) as entry_likes

关于php - 从 SQL 中检索条目的相似计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4016959/

相关文章:

php - 找不到类 'HttpResponse'

php - 代码点火器安全

javascript - WordPress 附件分类复选框组未保存在 GridView 中

php - 选择字段不为空的数据

mysql - 多个内部联接添加额外的值来计数

没有 DB 生成框架的 PHP MySQL 页面生成

mysql - 无法访问MySQL服务器,不知道root账户的密码

mysql - 使用 SQL 查询打印质数

mysql - 我可以设置Mysql自动分区吗?

sql - postgres正则表达式国际电话代码匹配