0

我试图制作一个 sql 但不知道如何让它工作。我得到了这个 MySQL 数据库:

线:

*id
-date
-title
-text
-user_id

评分:

*id
-thread_id
-user_id

我需要在一段时间内计算确定 THREAD 的正评级。对于我使用此工作 SQL 的时间间隔:

SELECT 
SUM(valor=1) AS total_likes
FROM threads
WHERE date>= date_sub(current_date, INTERVAL 7 day)
ORDER BY total_likes;

我尝试使用 THREAD 的 ID 进行 INNER 连接,但我认为我失败了。

4

1 回答 1

1

你的意思是这样的吗?

SELECT threads.id, COUNT(ratings.id) AS total_likes
FROM threads
LEFT JOIN ratings ON ratings.thread_id = threads.id
WHERE threads.date >= date_sub(current_date, INTERVAL 7 day)
GROUP BY threads.id
ORDER BY total_likes;

每个线程,它给出了该线程各自评级的数量。

于 2013-04-03T09:05:00.370 回答