본문 바로가기
ETC

엑셀로 대량의 쿼리문 생성하기

by softserve 2024. 5. 30.
반응형

다른 DB에서 옮겨오는 경우라면 DB툴에서 SQL문으로 내보내기 같은 기능을 활용하면 됩니다.

계속 반복되는 작업이라면 엑셀을 읽어서 DB에 넣어주는 프로그램을 만드는 것도 방법입니다.

하지만 일회성으로, 엑셀로 받은 대량의 데이터를 DB에 INSERT하려고 할 때 어떻게 하면 좋을까요?

엑셀을 이용해서 간단하게 쿼리문을 생성할 수 있었습니다.

 

A B C D
1 col1 col2 INSERT INTO SOME_TABLE VALUES
2 key1 value1 ('key1','value1'),
3 key2 value2 ('key2','value2'),

 

위와 같이 키-밸류 형태의 데이터를 이용해 D열에 쿼리문을 생성해보겠습니다.

엑셀에서는 다른 셀의 값을 참조할 때 &기호를 사용합니다.

B2의 key1은 &B2&로 C2의 value1은 &C2&로 표현할 수 있습니다.

D열에 ('key1','value1'), 같은 형태의 값을 만들려면 우선 셀의 값을 위와 같이 바꿔주고

나머지 기호는 큰 따옴표로 묶어줍니다.

=" (' " &B2& " ',' " &C2& " '), ”

 

이제 쭉 드래그해서 자동 채우기 한 다음 마지막 쉼표 , 를 세미콜론 ; 으로 바꿔줍니다.

D열을 복사해서 콘솔에 붙여넣으면 다음과 같이 완성된 쿼리문을 얻을 수 있습니다.

INSERT INTO SOME_TABLE VALUES
('key1', 'value1'),
('key2', 'value2');

 

반응형

댓글