1. 首页 > 综合百科 > insert语句

insert语句

Insert 语句是 SQL 中用于向数据库表插入一行或多行数据的语句。它可以将数据插入到表的指定列中,或替换表中已有的数据。以下是 Insert 语句的基语法:

INSERT INTO 表名 (列 1, 列 2, 列 3, ...) VALUES (值 1, 值 2, 值 3, ...);登录后复制

其中:

- `表名`:要插入数据的表的名称。

- `列 1`、`列 2`、`列 3`等:表中要插入数据的列的名称。

- `值 1`、`值 2`、`值 3`等:要插入的数据值。

以下是一些使用 Insert 语句的示例:

1. 插入一行数据:

假设有一个名为`students`的表,其中包含`id`、`name`和`age`三个列。要向该表插入一行数据,可以使用以下语句:

INSERT INTO students (id, name, age) VALUES (1, 'Alice', 20);登录后复制

这将在`students`表中插入一行数据,其中`id`为 1,`name`为'Alice',`age`为 20。

2. 插入多行数据:

要一次插入多行数据,可以使用以下语句:

INSERT INTO students (id, name, age) VALUES (1, 'Alice', 20),(2, 'Bob', 22),(3, 'Charlie', 23);登录后复制

这将在`students`表中插入三行数据。

3. 插入数据并计算新列的值:

假设有一个名为`orders`的表,其中包含`id`、`customer_id`和`total_amount`三个列。要向该表插入一行数据,并计算`total_amount`列的新值,可以使用以下语句:

INSERT INTO orders (id, customer_id, total_amount) VALUES (1, 1001, 500 + 300);登录后复制

这将在`orders`表中插入一行数据,其中`id`为 1,`customer_id`为 1001,`total_amount`为 800。

4. 替换表中的数据:

要替换表中的数据,可以使用 Insert 语句,并将`VALUES`子句中的值与表中的现有值进行比较。例如,假设有一个名为`students`的表,其中包含`id`、`name`和`age`三个列。要替换表中的一行数据,可以使用以下语句:

INSERT INTO students (id, name, age) VALUES (1, 'Alice', 20) WHERE id = 1;登录后复制

这将在`students`表中替换`id`为 1 的行,其中`name`为'Alice',`age`为 20。

注意:在执行 Insert 语句时,如果表中已存在具有相同主键值的行,那么将发生冲突。在这种情况下,可以使用`ON DUPLICATE KEY UPDATE`子句来指定如何处理冲突。例如,要插入具有相同`id`的行,并更新`age`列的值,可以使用以下语句:

INSERT INTO students (id, name, age) VALUES (1, 'Alice', 20) ON DUPLICATE KEY UPDATE age = age + 1;登录后复制

这将在`students`表中插入一行数据,其中`id`为 1,`name`为'Alice',`age`为 20。如果发生冲突,将更新`age`列的值,使其增加 1。