INSERT INTO application_tbl1 SELECT * FROM application_tbl ;

복사할 테이블                    기존 테이블


☞ Oracle
- 테이블에 있는 컬럼을 명시적으로 지정하지 않아도 가능하다.

- 예제
INSERT INTO emp_log 
SELECT * FROM emp WHERE empno = 7900


☞ MSSQL
- 테이블에 있는 컬럼을 명시적으로 지정해야 한다.
- 자동증가 컬럼이 지정되어 있는 경우 SET IDENTITY_INSERT [dbo].[table_name] ON 구문 사용


- 예제
INSERT INTO emp_log 
(empno, ename, job, mgr, hiredate, sal, comm, deptno)
SELECT empno, ename, job, mgr, hiredate, sal, comm, deptno
FROM emp
WHERE empno = 7900

- 예제 : 테이블에 자동증가 컬럼이 지정되어 있는 경우 
SET IDENTITY_INSERT [dbo].[CLT_INSPECT_LOG_MPEG_HISTORY] ON 

INSERT INTO emp_log 
(empno, ename, job, mgr, hiredate, sal, comm, deptno)
SELECT empno, ename, job, mgr, hiredate, sal, comm, deptno
FROM emp
WHERE empno = 7900


출처 : http://blog.naver.com/totodaud1004?Redirect=Log&logNo=70130984889


'IT > [DB]' 카테고리의 다른 글

SQL 인젝션-  (0) 2014.10.29
간단한 update  (0) 2013.10.07
MsSql -> MySql 전환  (0) 2013.06.14
[mysql] mysql 세팅, 재시작(privileges)  (0) 2012.12.13
[sql] ALTER ADD  (0) 2012.11.06

+ Recent posts