ホームページ  >  記事  >  データベース  >  MySQL INSERT INTO コマンドで WHERE 句を使用するにはどうすればよいですか?

MySQL INSERT INTO コマンドで WHERE 句を使用するにはどうすればよいですか?

PHPz
PHPz転載
2023-09-05 13:41:08753ブラウズ

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

新しい行を挿入する場合は、条件付き挿入、つまり WHERE 句と INSERT INTO コマンドを使用できます。次の方法で実行できます。

仮想テーブルを使用して

#この場合、仮想テーブルからの値をステータスとともに挿入します。構文は次のとおりです。 -

INSERT INTO table_name(column1,column2,column3,…) Select value1,value2,value3,… From dual WHERE [conditional predicate];

Example

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)

上の例では、「testing」テーブルを作成し、そこに行を挿入するために、仮想テーブルデュアルを使用しました。条件。条件が true の場合、MySQL はテーブルに行を挿入しますが、それ以外の場合は挿入しません。

同じ構造を持つテーブルを使用する

別のテーブルと同じ構造を持つテーブルに挿入する場合、次の例では、条件付きのメソッドを実行する方法を示します。挿入、つまり WHERE 句を INSERT 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)

上記の例では、テーブル「dummy」と同じ構造のテーブル「dummy1」に、「id = 1」の行のみを挿入するという条件で値を挿入しています。

以上がMySQL INSERT INTO コマンドで WHERE 句を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。