【发布时间】:2017-07-13 20:00:00
【问题描述】:
这是我的表结构:
-- users
+----+--------+--------------------+
| id | name | other columns ...
+----+--------+--------------------+
-- votes
+----+---------+---------+-------+------------+
| id | user_id | post_id | value | date_time |
+----+---------+---------+-------+------------+
| 1 | 234234 | 3443 | 1 | 1442684886 | -- For example
+----+---------+---------+-------+------------+
我想选择上周排名前 20 的用户。我该怎么做?
这是我当前的查询:
SELECT SUM(v.value) score , u.*
FROM users u
INNER JOIN votes
ON u.id = v.user_id
WHERE v.date_time > UNIX_TIMESTAMP(now() - INTERVAL 1 week)
ORDER BY score DESC
LIMIT 20;
但我的查询只返回一行。
【问题讨论】: