Home > Common Problem > body text

Use of insert into select syntax

DDD
Release: 2023-07-06 16:54:03
Original
5577 people have browsed it

In the database, the INSERT INTO SELECT statement is used to insert the results of a query into another table. The INSERT INTO SELECT statement can easily copy the contents of one table to another table, or create a new table based on query results.

Use of insert into select syntax

The syntax of INSERT INTO SELECT is as follows:

INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;
Copy after login

This statement means to add column1 and column2 of rows in table1 that meet a certain condition. , column3 and other columns are inserted into the corresponding columns in table2.

The following is a practical example to illustrate the use of INSERT INTO SELECT.

Suppose we have two tables: students and new_students. The students table contains the following columns: id, name, age, score. We want to insert students who are 18 years or older in the students table into the new_students table.

First, we create the students table and insert some sample data:

CREATE TABLE students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  age INT,
  score INT
);
INSERT INTO students (name, age, score)
VALUES ('John', 16, 90),
       ('Alice', 20, 95),
       ('Tom', 18, 85),
       ('Emily', 17, 88);
Copy after login

Next, we create the new_students table:

CREATE TABLE new_students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(50),
  age INT,
  score INT
);
Copy after login

Finally, we use the INSERT INTO SELECT statement to insert students Students who are 18 years or older in the table are inserted into the new_students table:

INSERT INTO new_students (name, age, score)
SELECT name, age, score
FROM students
WHERE age >= 18;
Copy after login

In this way, the new_students table contains the information of students who are 18 years or older in the students table.

In addition to directly inserting query results into another table, the INSERT INTO SELECT statement can also be used to create a new table containing only the query results:

CREATE TABLE new_table AS
SELECT column1, column2, ...
FROM table
WHERE condition;
Copy after login

In this way, new_table will be Create and include query results.

Summary

The INSERT INTO SELECT statement selects certain rows in one table (or query result) and inserts them into another table (or creates a new table). This function is very powerful and can easily copy, filter and create new tables.

The above is the detailed content of Use of insert into select syntax. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!