본문 바로가기

DataBase/SQL

[SQL] IN구문 사용기

얼마전 어느 정도 분량의 데이터를 삽입해줘야 하는 상황이 발생했다.

문제는....

 1. 대상 테이블이 IDENTITY가 걸려 있다.

 2. 이미 기존에 들어가 있는 데이터가 존재한다.

 3. 넣어야 할 데이터가 다른 DB(ORACLE)에 존재한다. 

 

 잠시 생각해 보니 DB가 오라클에서  MS로 변경된 걸 모르고 오라클에 신규 데이터를

삽입한 사람의 멱을 잡을 수 없으니 일단 변경된 리스트를 받는 선에서 끝내기로 하고

어떻게 손쉽게 할 수 있을까를 생각하니. 쓸만한 것이 IN 구문. 

 

 ※ 더 손쉬운 방법이 있다면 이 글을 보시는 분이라면 누구든 알려주세요.

 

 IN 구문의 사용법은 간단하다 다음과 같은 문법을 가진다.

 

 SELECT * FROM 테이블명 WHERE 조건을 걸 대상 컬럼 IN ( '값1', '값2', '값3', ... );

 

이런 식으로 하면 컬럼 값과 매치 되는 열만 검색해서 보여준다. 그 다음은... 머 간단했다.

INSERT 구문으로 데이터를 뽑고 대신 뽑을 때 넣어야 할 테이블에 IDENTITY가 걸려 있으니,

그 컬럼은 빼고, 뽑아서 실행만 시켜주면 되었다~ 

 

 해피한 결말 끝~

'DataBase > SQL' 카테고리의 다른 글

[SQL] SELECT INTO (임시 테이블 만들기) 사용법  (0) 2013.02.13
[SQL] 동적쿼리  (0) 2013.02.13
[SQL] DB복구후 DB와 사용자 매핑  (0) 2013.02.13
[SQL] 날짜 변경 (DATEADD)  (0) 2013.02.13
[SQL] 컬럼 속성 변경  (0) 2013.02.13