Reputation: 3600
I would like to know if it's possible to combine these two query.
My table look like this :
------------------------------------
| id | server | domain | status |
------------------------------------
| 1 | serv1 | serv1.az | 0 |
| 2 | serv2 | serv2.lo | 0 |
| 3 | serv2 | servNEW | 1 |
| 4 | serv3 | serv.as | 0 |
------------------------------------
I made these two queries to update the column :
UPDATE `table` SET `server` = ? WHERE `server` = ?
UPDATE `table` SET `domain` = ? WHERE `domain` = ?
E.g :
UPDATE `table` SET `server` = `serv1_NEW` WHERE `server` = `serv1`
UPDATE `table` SET `domain` = `serv1NEW` WHERE `domain` = `serv1.az`
EDIT:
Corrected syntax error
UPDATE `table` SET `server` = `serv1_NEW` WHERE `server` = 'serv1'
UPDATE `table` SET `domain` = `serv1NEW` WHERE `domain` = 'serv1.az'
Upvotes: 1
Views: 42
Reputation: 6456
In the simple case, you can use CASE statement. For example:
UPDATE `table` SET
`server`= CASE
WHEN `server` = 'serv1' THEN `serv1_NEW`
ELSE `server`
END,
`domain`= CASE
WHEN `domain` = 'serv1.az' THEN `serv1NEW`
ELSE `domain`
END
WHERE `server` = 'serv1' OR `domain` = 'serv1.az'
But two separate queries are more clear solution for your task
Upvotes: 1