admin 管理员组

文章数量: 887021


2024年2月24日发(作者:foreignkey约束是什么约束)

insert 几种写法

在SQL中,`INSERT`语句用于向表中插入新行。以下是`INSERT`语句的几种常见写法:

1. 插入完整的行:

```sql

INSERT INTO 表名 (列1, 列2, 列3, ...)

VALUES (值1, 值2, 值3, ...);

```

2. 插入特定的列:

如果你只想插入表中的某些列,而不是所有列,你可以明确指定列名。

```sql

INSERT INTO 表名 (列1, 列2)

VALUES (值1, 值2);

```

3. 从另一个表插入数据:

可以使用`SELECT`语句从另一个表中选择数据,并将其插入到目标表中。

```sql

INSERT INTO 表名1 (列1, 列2, ...)

SELECT 列A, 列B, ...

FROM 表名2

WHERE 条件;

```

4. 插入多行数据:

一次插入多行数据可以减少数据库交互次数,提高效率。

```sql

INSERT INTO 表名 (列1, 列2, ...)

VALUES

(值1a, 值2a, ...),

(值1b, 值2b, ...),

...;

```

5. 使用子查询插入数据:

可以使用子查询的结果作为插入的数据。

```sql

INSERT INTO 表名 (列1, 列2)

SELECT 列A, 列B

FROM 表名2;

```

6. 插入NULL值:

如果你想插入NULL值,只需将对应的值部分留空即可。例如:

```sql

INSERT INTO 表名 (列1, 列2)

VALUES (值1, NULL);

```

7. 使用DEFAULT关键字:

如果某列的默认值是某常量值,如数字或字符串,则可以使用DEFAULT关键字。

```sql

INSERT INTO 表名 (列1, 列2)

VALUES (值1, DEFAULT);

```

8. 使用CASE表达式:

在某些情况下,你可能需要根据某些条件插入不同的值。可以使用CASE表达式来实现。

```sql

INSERT INTO 表名 (列1, 列2)

VALUES (值1, CASE WHEN 条件 THEN 结果 ELSE 其他结果 END);

```


本文标签: 插入 使用 数据 表中 约束