Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to update a field based on its current value in MySQL?

Is it possible to get the current value of a field, use it as a variable in a calculation, then update the field based on the result?

For example the record with the ID "1" in table1 has a value of "2"

SELECT table1
WHERE ID = "1"
SET RESULT to CurrentID
RESULT = CurrentID + 1;
like image 573
blunders Avatar asked Apr 14 '11 18:04

blunders


2 Answers

This will set the result column to the value of the CurrentID column (plus 1) of the same row, for any row that has an ID column that equals "1":

UPDATE table1
SET result = CurrentID + 1
WHERE ID = "1"
like image 56
Oded Avatar answered Nov 16 '22 15:11

Oded


You might try

Update table1 set ID = ID+1 where ID = 1
like image 37
John K. Avatar answered Nov 16 '22 16:11

John K.