Collections:
Use Existing Column Values in the SET Clause in MySQL
How To Use Existing Column Values in the SET Clause in MySQL?
✍: FYIcenter.com
If a row matches the WHERE clause in a UPDATE statement, existing values in this row can be used in expressions to provide new values in the SET clause. Existing values are represented by column names in the expressions. The tutorial exercise below shows a good example:
mysql> UPDATE fyi_links SET id = id+200, counts = id*2 WHERE id >= 500; Query OK, 5 rows affected (0.01 sec) Rows matched: 5 Changed: 5 Warnings: 0 mysql> SELECT id, url, notes, counts, DATE(created) FROM fyi_links WHERE id >= 500; +-----+-------------------+-------+--------+---------------+ | id | url | notes | counts | DATE(created) | +-----+-------------------+-------+--------+---------------+ | 801 | moc.retneciyf.ved | Wrong | 1602 | 2006-04-30 | | 802 | moc.retneciyf.abd | Wrong | 1604 | 2006-08-31 | | 803 | moc.retneciyf.aqs | Wrong | 1606 | 2006-08-31 | | 810 | | Wrong | 1620 | 2006-08-31 | | 700 | moc.retneciyf.www | Wrong | 1400 | 2006-08-31 | +-----+-------------------+-------+--------+---------------+ 5 rows in set (0.00 sec)
This statement increased values in the id column by 200. It also updated the counts column with the newly increased id value.
2018-01-13, 775👍, 0💬
Popular Posts:
How to set database to be READ_ONLY in SQL Server? Databases in SQL Server have two update options: ...
What Is a Constant or Literal in SQL Server Transact-SQL? A constant, or data literal, is a symbolic...
How To Provide Values to Stored Procedure Parameters in SQL Server Transact-SQL? If a stored procedu...
How To Convert Numeric Expression Data Types using the CONVERT() Function in SQL Server Transact-SQL...
How To Get the Definition of a User Defined Function Back in SQL Server Transact-SQL? If you want ge...