source

데이터를 다른 테이블로 복사

itover 2023. 4. 7. 21:11
반응형

데이터를 다른 테이블로 복사

SQL Server에서 동일한 스키마를 사용하여 한 테이블에서 다른 테이블로 데이터를 복사/추가하는 방법

편집:

질문이 있다고 칩시다.

select * 
into table1 
from table2 
where 1=1 

이 때문에table1와 같은 스키마 및 데이터를 사용하여table2.

기존 테이블에만 전체 데이터를 복사하는 이와 같은 짧은 쿼리가 있습니까?

두 테이블이 실제로 동일한 스키마인 경우:

INSERT INTO newTable
SELECT * FROM oldTable

그렇지 않으면 열 이름을 지정해야 합니다(열 목록:newTable모든 열에 대한 값을 지정하고 다음과 같은 순서로 열을 선택하는 경우 옵션입니다.newTable의 스키마):

INSERT INTO newTable (col1, col2, col3)
SELECT column1, column2, column3
FROM oldTable

간단한 방법은 새 테이블이 존재하지 않고 모든 것이 포함된 이전 테이블의 복사본을 만들려는 경우 SQL Server에서 다음을 수행할 수 있습니다.

SELECT * INTO NewTable FROM OldTable

적절한 방법은 다음과 같습니다.

INSERT INTO destinationTable
SELECT * FROM sourceTable
INSERT INTO table1 (col1, col2, col3)
SELECT column1, column2, column3
FROM table2                                        

이것을 시험해 보세요.

INSERT INTO MyTable1 (Col1, Col2, Col4)
   SELECT Col1, Col2, Col3 FROM MyTable2

이것을 시험해 보세요.

Insert Into table2
Select * from table1

조건과 함께 선택 열 삽입

INSERT INTO where_to_insert (col_1,col_2) SELECT col1, col2 FROM from_table WHERE condition;

동일한 열 이름을 사용하여 한 테이블에서 다른 테이블로 모든 데이터를 복사합니다.

INSERT INTO where_to_insert 
SELECT * FROM from_table WHERE condition;
CREATE TABLE `table2` LIKE `table1`;
INSERT INTO `table2` SELECT * FROM `table1`;

첫 번째 쿼리는 다음에서 구조를 만듭니다.table1로.table2그리고 두 번째 쿼리는 데이터를 저장한다.table1로.table2

INSERT INTO DestinationTable(SupplierName, Country)
SELECT SupplierName, Country FROM SourceTable;

반드시 열 이름을 동일하게 해야 하는 것은 아닙니다.

한 테이블에서 다른 테이블로 모든 열을 복사합니다.

INSERT INTO table2
SELECT * FROM table1
WHERE condition;

한 테이블에서 다른 테이블로 일부 열만 복사합니다.

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

다음을 실행하여 테이블의 내용을 복제하거나 "복제"할 수 있습니다.

CREATE TABLE new_table AS SELECT * FROM original_table;

-- SQL Server 사용자용.

새 테이블이 없는 경우 이전 테이블과 동일한 구조로 새 테이블을 작성할 수 있으며 이전 테이블에서 새 테이블로 데이터를 복사할 수도 있습니다.예를 들어 다음과 같습니다.

select * into new_table
from old_table; 

또한 열/테이블 구조와 일부 데이터만 복사할 수 있습니다.예를 들어 다음과 같습니다.

select * into new_table
from old_table 
where country = 'DE'; 

언급URL : https://stackoverflow.com/questions/13237623/copy-data-into-another-table

반응형