检索来自SQL的条目的计数

时间:2010-10-25 16:55:28

标签: php mysql sql database social-media-like

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

**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

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

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

为您的表格提供别名..

FROM entries e

然后添加一个列查询:

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

答案 1 :(得分:0)

添加:

GROUP BY entries.entry_id

看看是否有效。