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, 4362🔥, 0💬
Popular Posts:
How To Fix the INSERT Command Denied Error in MySQL? The reason for getting the "1142: INSERT comman...
Where to find Oracle database server tutorials? Here is a collection of tutorials, tips and FAQs for...
Where to find tutorials to answer some frequently asked questions on Microsoft SQL Server Transact-S...
How To Locate and Take Substrings with CHARINDEX() and SUBSTRING() Functions in SQL Server Transact-...
How to convert a JSON (JavaScript Object Notation) quoted string into a regular character string usi...