Du behøver ingen tilbud.
UPDATE my_table SET my_field = my_field - 1 WHERE `other` = '123'
For at forstå, er det som en klassisk affekt på alle sprog:"Jeg vil have my_field er lig med my_field (den aktuelle værdi) minus 1 .
Hvis du sætter anførselstegn, betyder det "Jeg vil have my_field er lig med strengen:
'my_field-1'(til din første forespørgsel)'my_field' - 1(hvilket ikke betyder noget, i det mindste for mig:hvad er resultatet af en streng minus et heltal?)'-1', som vil blive konverteret til -1, hvis dit felt har INTEGER-signeret typen.
I nogle tilfælde (hvis du har mellemrum eller specialtegn, hvis dit feltnavn), kan du omgive feltnavnet med `backticks`:
UPDATE my_table SET `my_field` = `my_field` - 1 WHERE other = '123'