SQL: 테이블 간 데이터 복사
자주 발생하는 SQL 작업에는 한 테이블에서 다른 테이블로 데이터를 전송하는 작업이 포함됩니다. 특정 구문은 데이터베이스 시스템마다 약간 다를 수 있지만 광범위하게 호환되는 접근 방식은 INSERT INTO ... SELECT
문
데이터 삽입을 위한 표준 SQL 구문
다음 구문은 다양한 데이터베이스 관리 시스템(DBMS)에서 높은 수준의 호환성을 제공합니다.
<code class="language-sql">INSERT INTO target_table (column1, column2, ...) SELECT source_column1, source_column2, ... FROM source_table [WHERE condition];</code>
다음은 분석입니다.
target_table
: 새로운 데이터를 받는 테이블입니다.column1, column2, ...
: target_table
에서 데이터가 삽입될 열입니다. 주문은 SELECT
문source_column1, source_column2, ...
: 데이터를 제공하는 source_table
의 열입니다. 데이터 유형은 해당 target_table
열과 호환되어야 합니다.source_table
: 데이터를 제공하는 테이블입니다.WHERE condition
(선택 사항): 삽입하기 전에 source_table
의 데이터를 필터링합니다. 조건을 만족하는 행만 복사됩니다.DBMS 호환성
이 INSERT INTO ... SELECT
방법은 일반적으로 다음을 포함한 광범위한 DBMS에서 작동합니다.
예시
"employees" 테이블과 "department_summary" 테이블이 있다고 가정해 보겠습니다. department_summary
을 직원 부서 이름으로 채우려면:
<code class="language-sql">INSERT INTO department_summary (department_name) SELECT department FROM employees;</code>
이렇게 하면 employees
테이블의 모든 고유한 부서 이름이 department_name
테이블의 department_summary
열에 삽입됩니다. 중복된 부서 이름은 한 번만 삽입됩니다. 중복 항목을 다르게 처리해야 하는 경우 논리를 추가해야 합니다(예: GROUP BY
및 집계 함수 사용).
위 내용은 표준 SQL 구문을 사용하여 한 테이블에서 다른 테이블로 데이터를 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!