Collections:
UPDATE Using Data from Other Tables in MySQL
How To Use Values from Other Tables in UPDATE Statements in MySQL?
✍: FYIcenter.com
If you want to update values in one table with values from another table, you can use a subquery as an expression in the SET clause. The subquery should return only one row for each row in the update table that matches the WHERE clause. The tutorial exercise below shows you a good example:
mysql> CREATE TABLE fyi_rates (id INTEGER, comment VARCHAR(16)); Query OK, 0 rows affected (0.53 sec) mysql> INSERT INTO fyi_rates VALUES (101, 'The best'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO fyi_rates VALUES (102, 'Well done'); Query OK, 1 row affected (0.01 sec) mysql> INSERT INTO fyi_rates VALUES (103, 'Thumbs up'); Query OK, 1 row affected (0.00 sec) mysql> UPDATE fyi_links SET notes = ( SELECT comment FROM fyi_rates WHERE fyi_rates.id = fyi_links.id ) WHERE id > 0 AND id < 110; Query OK, 3 rows affected (0.50 sec) Rows matched: 3 Changed: 3 Warnings: 0 mysql> SELECT id, url, notes, counts FROM fyi_links WHERE id > 0 AND id < 110; +-----+-------------------+-----------+--------+ | id | url | notes | counts | +-----+-------------------+-----------+--------+ | 101 | dev.fyicenter.com | The best | 999 | | 102 | dba.fyicenter.com | Well done | 0 | | 103 | sqa.fyicenter.com | Thumbs up | NULL | +-----+-------------------+-----------+--------+ 3 rows in set (0.00 sec)
Note that if column names are confusing between the inner table and the outer table, you need to prefix column names with table names, like "fyi_rates.id = fyi_links.id".
⇒ UPDATE with Subquery Returning No Rows in MySQL
⇐ Order of Columns in the SET Clause in MySQL
2018-01-13, 2140🔥, 0💬
Popular Posts:
What Happens If the Imported Table Already Exists in Oracle? If the import process tries to import a...
How to set the current database in SQL Server? Once you are connected to the SQL Server, you should ...
Where to find SQL Server database server tutorials? Here is a collection of tutorials, tips and FAQs...
Where to find MySQL database server tutorials? Here is a collection of tutorials, tips and FAQs for ...
What Is Oracle in Oracle? Oracle is a company. Oracle is also a database server, which manages data ...