Maison > base de données > tutoriel mysql > Que renverra MySQL si la sous-requête utilisée pour attribuer une nouvelle valeur dans la clause SET d'une instruction UPDATE renvoie plusieurs lignes ?

Que renverra MySQL si la sous-requête utilisée pour attribuer une nouvelle valeur dans la clause SET d'une instruction UPDATE renvoie plusieurs lignes ?

王林
Libérer: 2023-08-27 19:13:02
avant
917 Les gens l'ont consulté

如果用于在 UPDATE 语句的 SET 子句中分配新值的子查询返回多行,MySQL 将返回什么?

Dans ce cas, MySQL renverra un message d'erreur car nous savons que si vous utilisez une sous-requête pour attribuer une nouvelle valeur dans la clause SET de l'instruction UPDATE, alors elle doit renvoyer une ligne pour chaque ligne correspondante dans la mise à jour table WHERE clause.

Exemple

mysql> insert into info(id, remarks) values(5,'average');
Query OK, 1 row affected (0.06 sec)

mysql> select * from info;
+------+-----------+
| id   | remarks   |
+------+-----------+
| 1    | Good      |
| 2    | Good      |
| 3    | Excellent |
| 4    | Average   |
| 5    | Best      |
| 5    | average   |
+------+-----------+
6 rows in set (0.00 sec)
Copier après la connexion

Comme nous l'avons vu ci-dessus, la table "info" a deux lignes avec id = 5, donc lorsque nous l'utilisons dans une sous-requête, elle renverra plusieurs lignes, donc MySQL renverra un message d'erreur, comme suit : < /p>

mysql> UPDATE STUDENT SET grade = (SELECT remarks from info WHERE info.id = student.id) WHERE id = 5;
ERROR 1242 (21000): Subquery returns more than 1 row
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal