SELECT
a.user_id,
a.id,
a.evidence_pic,
a.activity_id,
COUNT(1) AS num
FROM
(SELECT
*
FROM
activity
WHERE user_id IN
#{tiem}
AND evidence_pic IS NOT NULL
AND activity_id != #{activityId}) a
INNER JOIN (SELECT
*
FROM
activity
WHERE user_id IN
#{tiem}
AND evidence_pic IS NOT NULL
AND activity_id != #{activityId}) b
ON a.user_id = b.user_id
WHERE b.id >= a.id
GROUP BY a.id
HAVING num <= 2
ORDER BY a.id asc