Mysql group by和count尝试单独列

时间:2016-05-31 09:05:20

标签: php mysql count group-by sql-order-by

我有一个mySQL查询,通过测验尝试ID对结果进行分组:

SELECT * 
FROM quiz_log  
WHERE archived = 0 
GROUP BY quiz_attempt_id 
ORDER BY quiz_attempt_id ASC

This produces the below result

我的问题是我现在如何计算app_user_id中的尝试次数。 app_user_id = 150出现了三次,所以我需要另一列,第一行的数字为1,第三行为2,第19行为3。

1 个答案:

答案 0 :(得分:2)

您可以使用相关查询:

SELECT t.*,
       (SELECT count(distinct s.quiz_attempt_id) FROM quiz_log s
        WHERE s.app_user_id = t.app_user_id
         AND s.timestamp <= t.timestamp) as Your_Cnt
FROM quiz_log t
WHERE ....