почему бы вам просто не рассмотреть идентификатор
update table
set spent=1
where id in (1,4) and name='a'
в качестве обновленного вопроса и отсутствие идентификатора в данных примера, чтобы вы могли использовать подзапрос
UPDATE table1
SET spent = 1
WHERE spent IN (SELECT spent
FROM table1
WHERE name = 'a'
ORDER BY spent
LIMIT 2) and name='a';
select * from table1 order by name,spent;
name spent
a 1
a 1
a 3
b 4.6
b 16
c 1.2
c 7