我有一个状态表,其中存储用户配置文件的完成分数。每天都会保存每个用户个人资料的列表分数。 我想知道哪个档案得分会随着时间的推移而改善:例如昨天比两周前得分高的人。为此,我想使用一个我无法工作的子查询。
目前,我有这个:
SELECT user_id, completion_score
FROM user_profile_stats
WHERE date = curdate() - INTERVAL 1 DAY
AND completion_score > (
SELECT user_id, completion_score
FROM user_profile_stats
WHERE date = curdate() - INTERVAL 14 DAY
)
我得到子查询返回超过1行的错误(这是正确的)。在这个论坛上搜索后,我发现我必须使用IN而不是>,但后来我的查询不是我希望它返回的。
我很感激你对我做错了什么的解释。谢谢!
答案 0 :(得分:1)