Collections:
UPDATE with Subquery Returning No Rows in MySQL
What Happens If the UPDATE Subquery Returns No Rows in MySQL?
✍: FYIcenter.com
If you use a subquery to assign new values in the SET clause in an UPDATE statement, and the subquery returns no rows for an outer row, MySQL will provide a NULL value to the SET clause. The tutorial exercise below shows you a good example:
mysql> UPDATE fyi_links SET notes = 'Number one' WHERE id = 0; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> SELECT id, url, notes, counts FROM fyi_links WHERE id = 0; +----+-------------------+------------+--------+ | id | url | notes | counts | +----+-------------------+------------+--------+ | 0 | www.fyicenter.com | Number one | NULL | +----+-------------------+------------+--------+ 1 row in set (0.00 sec) mysql> SELECT * FROM fyi_rates WHERE id = 0; Empty set (0.00 sec) mysql> UPDATE fyi_links SET notes = ( SELECT comment FROM fyi_rates WHERE fyi_rates.id = fyi_links.id ) WHERE id = 0; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 mysql> SELECT id, url, notes, counts FROM fyi_links WHERE id = 0; +----+-------------------+-------+--------+ | id | url | notes | counts | +----+-------------------+-------+--------+ | 0 | www.fyicenter.com | NULL | NULL | +----+-------------------+-------+--------+ 1 row in set (0.00 sec)
⇒ Error: Subquery Returns More than 1 Row in MySQL
⇐ UPDATE Using Data from Other Tables in MySQL
2018-01-08, 2261🔥, 0💬
Popular Posts:
What Is Program Global Area (PGA) in Oracle? A Program Global Area (PGA) is a memory buffer that is ...
How To Get Year, Month and Day Out of DATETIME Values in SQL Server Transact-SQL? You can use DATEPA...
How To Convert Numeric Expression Data Types using the CAST() Function in SQL Server Transact-SQL? I...
How To Set Up SQL*Plus Output Format in Oracle? If you want to practice SQL statements with SQL*Plus...
How To Change the Password for Your Own User Account in MySQL? If you want to change the password of...