Você não precisa de citações.
UPDATE my_table SET my_field = my_field - 1 WHERE `other` = '123'
Para entender, é como uma afetação clássica em qualquer idioma:"Eu quero
my_field sendo igual a my_field (o valor atual) menos 1 .Se você colocar aspas, significa "Eu quero
my_field sendo igual à string:'my_field-1'(para sua primeira consulta)'my_field' - 1(o que não significa nada, pelo menos para mim:qual o resultado de uma string menos um inteiro?)'-1', que será convertido em -1 se seu campo tiver o tipo com sinal INTEGER.
Em alguns casos (se você tiver espaços ou caracteres especiais no nome do seu campo), você pode cercar o nome do campo com `backticks`:
UPDATE my_table SET `my_field` = `my_field` - 1 WHERE other = '123'