SQL INSERT INTO 语句


SQL INSERT INTO语句是用于将数据插入到表中的命令。语法如下:

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);

其中,table_name为要插入数据的表名,column1、column2、column3等为要插入的列名,values1、values2、values3等为要插入的值。例如:

INSERT INTO students (name, age, gender)
VALUES ('John', 20, 'male');

这个语句会往students表中插入一条记录,其中name列为’John’,age列为20,gender列为’male’。

如果想插入多行数据,可以在INSERT INTO后面加上多个value子句,例如:

INSERT INTO students (name, age, gender)
VALUES ('John', 20, 'male'),
       ('Kate', 22, 'female'),
       ('Tom', 21, 'male');

这条语句会在students表中插入三条记录。

如果不想指定要插入的列名,可以用以下语句:

INSERT INTO table_name
VALUES (value1, value2, value3, ...);

这个语句会将值按照列的顺序插入表中。

值得注意的是,当插入数据时必须保证每一列的数据类型都符合列的定义。如果插入的数据类型与列的定义不符,将会出现插入错误。因此,在插入数据之前要先检查列的定义。

除了使用VALUES子句插入数据,INSERT INTO语句还可以使用子查询的方式来插入数据。例如:

INSERT INTO students_new (name, age, gender)
SELECT name, age, gender
FROM students
WHERE age > 20;

这个语句会从students表中选出年龄大于20岁的记录,并将其插入到students_new表中。

总之,SQL INSERT INTO语句是非常重要的一个命令,在数据库系统中使用频率非常高。熟练掌握该命令的使用方法可以大大提高数据库的操作效率,使操作更加简单和方便。