데이터베이스에서 INSERT INTO SELECT 문은 쿼리 결과를 다른 테이블에 삽입하는 데 사용됩니다. INSERT INTO SELECT 문을 사용하면 한 테이블의 내용을 다른 테이블에 쉽게 복사하거나 쿼리 결과를 기반으로 새 테이블을 만들 수 있습니다.
INSERT INTO SELECT 구문은 다음과 같습니다.
INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition;
table1에서 특정 조건을 만족하는 행의 컬럼1, 컬럼2, 컬럼3 및 기타 컬럼의 값을 해당 컬럼에 삽입한다는 의미입니다. 테이블 2에서.
다음은 INSERT INTO SELECT의 사용법을 보여주는 실제 예입니다.
students와 new_students라는 두 개의 테이블이 있다고 가정해 보겠습니다. 학생 테이블에는 ID, 이름, 나이, 점수 열이 포함되어 있습니다. 학생 테이블에 있는 18세 이상의 학생을 new_students 테이블에 삽입하려고 합니다.
먼저 학생 테이블을 생성하고 몇 가지 샘플 데이터를 삽입합니다.
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);
다음으로 new_students 테이블을 생성합니다.
CREATE TABLE new_students ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), age INT, score INT );
마지막으로 INSERT INTO SELECT 문을 사용하여 학생 테이블에 18세 이상의 학생을 삽입합니다. table into new_students 테이블 내:
INSERT INTO new_students (name, age, score) SELECT name, age, score FROM students WHERE age >= 18;
이런 식으로 new_students 테이블에는 학생 테이블의 18세 이상의 학생 정보가 포함됩니다.
쿼리 결과를 다른 테이블에 직접 삽입하는 것 외에도 INSERT INTO SELECT 문을 사용하여 쿼리 결과만 포함하는 새 테이블을 만들 수도 있습니다.
CREATE TABLE new_table AS SELECT column1, column2, ... FROM table WHERE condition;
이런 방식으로 new_table이 생성되고 쿼리 결과가 포함됩니다.
요약
INSERT INTO SELECT 문은 한 테이블(또는 쿼리 결과)에서 특정 행을 선택하여 다른 테이블에 삽입합니다(또는 새 테이블을 만듭니다). 이 기능은 매우 강력하며 새 테이블을 쉽게 복사, 필터링 및 생성할 수 있습니다.
위 내용은 선택 구문에 삽입 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!