SQLite – increase value by a certain number

sqlite

is it possible to increase a certain value in a table by a certain number without reading last value and afterwards updating it?

i.e. I have columns "product" and "quality":
product: iLamp
quality: 50

I want to increase(or decrease) quality by x. To achieve this I am first reading last value (50), increasing or decreasing it, and writing it back.

Is there a direct way to complete this task?

Best Solution

Example 1 (for all rows):

UPDATE product SET price = price + 50

Example 2 (for a specific row):

UPDATE product SET price = price + 50 WHERE id = 1

Example 3 (for specific rows):

UPDATE product SET price = price + 50 WHERE id IN [1, 2, 3]

Example 4 (generic):

UPDATE {table} SET {column} = {column} + {value} WHERE {condition}

Where:

  • {table} - table name
  • {column} - column name
  • {value} - a number by which column's value should be increased or decreased
  • {condition} - some condition if any