Non hai bisogno di citazioni.
UPDATE my_table SET my_field = my_field - 1 WHERE `other` = '123'
Per capire, è come una classica affettazione in qualsiasi lingua:"Voglio my_field essendo uguale a my_field (il valore corrente) meno 1 .
Se metti le virgolette, significa "Voglio my_field essendo uguale alla stringa:
'my_field-1'(per la tua prima domanda)'my_field' - 1(che non significa nulla, almeno per me:qual è il risultato di una stringa meno un intero?)'-1', che verrà convertito in -1 se il tuo campo ha il tipo con segno INTEGER.
In alcuni casi (se hai spazi o caratteri speciali se il nome del tuo campo), puoi racchiudere il nome del campo con `backtick`:
UPDATE my_table SET `my_field` = `my_field` - 1 WHERE other = '123'