Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Archives
Today
Total
관리 메뉴

우리마의 웹 개발

[SQL] MyBatis select한 결과물을 insert하기(select 행이 많을때도 가능) 본문

WEB/DB

[SQL] MyBatis select한 결과물을 insert하기(select 행이 많을때도 가능)

우리마 2020. 1. 31. 17:15

Spring 또는 eGov 환경에서 DB를 MyBatis 프레임웤 을 쓰면서 insert 문을 사용하는데

보통 insert 문법은

 

INSERT INTO table(a,b,c) values('a', 'b', 'c');

 

이런 형태 이다 근데 삽입할 데이터를 select로 조회한 결과 전체를( 여러 row 일지라도) 삽입하고 싶을 때에 대한 방법이다.

 

아래 SQL 에서 칼럼 이 상당히 많은데 모두 생략하고 중요한 것이

INSERT 할 칼럼과 SELECT결과 칼럼이 순서와 이름이 모두 같아야 한다.

SELECT 문에서 WHERE절까지 가능하다

INSERT INTO TN_TEST

     (MNG_NO 
     , TY_CD

        생략...   ) 
SELECT 
     MNG_NO 
     , TY_CD 
      생략....

FROM

     TN_TEST_TABLE

만약에 SELECT 절과 INSERT할 테이블의 칼럼이 다르다면

INSERT할 테이블의 칼럼은 고정되있을수 있다면

INSERT INTO TN_TEST

     (MNG_NO 
     , TY_CD

        생략...   ) 
SELECT 
     'abc001' AS MNG_NO
     , TY_CD 
      생략....

FROM

     TN_TEST_TABLE

이런식으로 정적인 값을 넣어 둘수 있다. 물론 #{MNG_NO} 이렇게 MyBatis 변수로 가능하다.

 

긋긋긋~

 

 

 

 

 

'WEB > DB' 카테고리의 다른 글

[DB] MySQL8.x 외부 접속 허용 하는 방법  (14) 2020.09.02
Comments