SQL(Structured Query Language)是一种用于管理关系数据库的标准编程语言,它允许用户创建、查询、更新和删除数据库中的数据,本文将介绍如何使用 SQL 插入数据,并提供一些示例代码。

1. INSERT INTO 语句
INSERT INTO 语句用于向表中插入新的行,基本语法如下:
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
table_name 是要插入数据的表的名称,column1, column2, column3, ... 是表中的列名,value1, value2, value3, ... 是要插入的值。
示例 1:插入单行数据
假设我们有一个名为students 的表,包含以下列:id,name,age,grade,要插入一行新数据,可以使用以下 SQL 语句:
INSERT INTO students (id, name, age, grade) VALUES (1, '张三', 18, '一年级');
这将在students 表中插入一条新记录,其id 为 1,name 为 ‘张三’,age 为 18,grade 为 ‘一年级’。

示例 2:插入多行数据
如果要一次插入多行数据,可以在VALUES 子句中提供多个值组,每个值组之间用逗号分隔。
INSERT INTO students (id, name, age, grade)
VALUES (2, '李四', 19, '二年级'),
(3, '王五', 20, '三年级');
这将在students 表中插入两条新记录。
2. INSERT INTO SELECT 语句
除了直接插入固定的值,还可以使用INSERT INTO SELECT 语句从一个表中选择数据并插入到另一个表中,基本语法如下:
INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition;
table2 是要插入数据的表的名称,table1 是源表的名称,column1, column2, column3, ... 是要复制的列名,condition 是可选的筛选条件。

示例 3:从另一个表中插入数据
假设我们有两个表:students 和graduates,现在我们想要将所有年龄大于等于 22 岁的学生从students 表复制到graduates 表,可以使用以下 SQL 语句:
INSERT INTO graduates (id, name, age, grade) SELECT id, name, age, grade FROM students WHERE age >= 22;
这将把满足条件的记录从students 表复制到graduates 表。
问题与解答
问题1:如何一次性插入多条数据?
答:可以使用INSERT INTO 语句的多个值组功能,每个值组之间用逗号分隔。
INSERT INTO students (id, name, age, grade)
VALUES (4, '赵六', 21, '四年级'),
(5, '孙七', 22, '五年级');
问题2:如何从一个表中复制数据到另一个表?
答:可以使用INSERT INTO SELECT 语句,结合SELECT 语句来选择需要复制的数据。
INSERT INTO new_table (column1, column2) SELECT column1, column2 FROM old_table WHERE condition;
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/16153.html