Filter from the same user times
http://sqlfiddle.com/#!9/c88a4/8

select t1.id, t1.t, time_to_sec(t1.t) s
from times t1
left join times t2 on t1.id = t2.id
  and time_to_sec(t1.t) &gt; time_to_sec(t2.t)
  and abs(time_to_sec(t1.t) - time_to_sec(t2.t)) &lt;= 20
where t2.id is null
group by t1.t, t1.id


uses "groupwise-max" method with dynamicaly defined group. Seems to work on your testing data.