首頁  >  文章  >  資料庫  >  我們如何將 WHERE 子句與 MySQL INSERT INTO 指令一起使用?

我們如何將 WHERE 子句與 MySQL INSERT INTO 指令一起使用?

PHPz
PHPz轉載
2023-09-05 13:41:08740瀏覽

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

在插入新行的情況下,我們可以使用條件插入,即 WHERE 子句和 INSERT INTO 指令。可以透過以下方式完成 -

借助虛擬表

在這種情況下,我們插入虛擬表中的值以及一些狀況。語法如下 -

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

範例

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”,為了向其中插入行,我們使用了帶有條件的虛擬表對偶。如果條件為真,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)

在上面的範例中,我們在表格「dummy1」中插入了值,其結構與表格「dummy」相同,條件是僅插入「id = 1」的行。

以上是我們如何將 WHERE 子句與 MySQL INSERT INTO 指令一起使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除