Maison > base de données > tutoriel mysql > le corps du texte

Comment pouvons-nous utiliser la clause WHERE avec la commande MySQL INSERT INTO ?

PHPz
Libérer: 2023-09-05 13:41:08
avant
761 Les gens l'ont consulté

我们如何将 WHERE 子句与 MySQL INSERT INTO 命令一起使用?

En cas d'insertion de nouvelles lignes, nous pouvons utiliser l'insertion conditionnelle, c'est-à-dire la clause WHERE et la commande INSERT INTO. Cela peut être fait de la manière suivante -

À l'aide d'une table virtuelle

Dans ce cas, nous insérons les valeurs de la table virtuelle ainsi qu'un certain statut. La syntaxe est la suivante -

INSERT INTO table_name(column1,column2,column3,…) Select value1,value2,value3,… From dual WHERE [conditional predicate];
Copier après la connexion

Exemple

mysql> Create table testing(id int, item_name varchar(10));
Query OK, 0 rows affected (0.15 sec)

mysql> Insert into testing (id,item_name)Select 1,'Book' From Dual Where 1=1;
Query OK, 1 row affected (0.11 sec)
Records: 1 Duplicates: 0 Warnings: 0

mysql> Select * from testing;

+------+-----------+
| id   | item_name |
+------+-----------+
| 1    | Book      |
+------+-----------+

1 row in set (0.00 sec)
Copier après la connexion

Dans l'exemple ci-dessus, nous avons créé une table "testing" et afin d'y insérer des lignes, nous utilisons une table virtuelle dual avec des conditions. Si la condition est vraie, MySQL insérera la ligne dans la table, sinon ce ne sera pas le cas.

À l'aide d'une table avec la même structure

Si nous voulons insérer dans une table avec la même structure qu'une autre table, alors dans l'exemple suivant, il est démontré comment faire une insertion conditionnelle, c'est-à-dire comment utiliser la clause WHERE avec INSERT Déclaration INTO.

mysql> Insert into dummy1(id,name)select id, name from dummy Where id =1;
Query OK, 1 row affected (0.06 sec)
Records: 1 Duplicates: 0 Warnings: 0

mysql> select * from dummy;

+------+--------+
| id   | Name   |
+------+--------+
| 1    | Gaurav |
| 2    | Aarav |
+------+--------+

2 rows in set (0.00 sec)

mysql> select * from dummy1;

+------+--------+
| id   | Name   |
+------+--------+
| 1    | Gaurav |
+------+--------+

1 row in set (0.00 sec)
Copier après la connexion

Dans l'exemple ci-dessus, nous avons inséré des valeurs dans le tableau "dummy1" avec la même structure que le tableau "dummy" avec la condition que seules les lignes avec "id = 1" seront insérées.

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!

source:tutorialspoint.com
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