select id, action, user_id
from (select ifnull(@a<>action or @b<>user_id, 1) as w, id, @a:=action as action, @b:=user_id as user_id from table1 order by id) as t
where w
Или упрощенный вариант. Если ID это прямой первичный ключ, то сортировка не нужна, и следовательно не нужен подзапрос.
select * from table1 where (@b:=user_id)+(@a:=action)+(@w:=ifnull(@a<>action or @b<>user_id, 1))+1 and @w
На входе
Id, action, user_id
100 1 1
101 1 1
102 1 2
103 1 1
104 1 2
На выходе
id action user_id
100 1 1
102 1 2
103 1 1
104 1 2
P.S. Подзапрос можно исключить,