我有items_ratings
表如下:MySQL的:每個項目的平均評分,採用最新的評級用戶
items_ratings
+----+--------+---------+---------+---------------------+
| id | rating | user_id | item_id | created (DATETIME) |
+----+--------+---------+---------+---------------------+
| 1 | 20 | 1 | 12 | 2017-07-12 14:00:04 |
| 2 | 80 | 2 | 12 | 2017-07-12 15:32:12 |
| 3 | 50 | 1 | 15 | 2017-08-01 11:14:04 |
| 4 | 90 | 1 | 12 | 2017-08-02 19:23:19 |
| 5 | 60 | 2 | 15 | 2017-08-05 19:23:19 |
+----+--------+---------+---------+---------------------+
我需要爲每個item_id
檢索的平均值,使用每個用戶最近的評級。
下面給我的平均得分爲每個項目:
SELECT AVG(rating) FROM items_ratings
GROUP BY item_id
我也確定了以下查詢給了我最近的行爲每個user_id
,通過item_id
。
SELECT MAX(created), user_id, item_id FROM items_ratings
GROUP BY user_id, item_id;
我不確定如何結合這些查詢來產生我想要的結果。
,即可查看新的條件組:[爲什麼要我爲了什麼,在我看來是一個非常簡單的SQL查詢提供MCVE?](HT TPS://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple-sql-query) – Strawberry