개발/Database

[Mysql] 여러 컬럼 IN문 사용하기

신매력 2017. 5. 26. 11:34

보통 IN문 사용할 때, 한 컬럼에 대한 것으로 주로 검색한다.

SELECT * FROM table 
WHERE  
 id IN (1, 2, 3, 4)

 

두 컬럼이 unique한데 여러 값을 가져와야할 때는???

 

 

예를들어 id1, id2 컬럼으로 여러 값을 가져와야한다면 아래와 같이 사용한다.

SELECT * FROM table 
WHERE  
(id1, id2) IN (
    SELECT id1, id2 FROM table
    WHERE 
    (id1=1 AND id2=2) OR
    (id1=3 AND id2=4) OR
    (id1=5 AND id2=6)
);

 

IN문 안에 서브쿼리로~

 

 

 

(id1, id2) IN ((1, 2), (3, 4))...

이런식이었으면 좋으련만 ㅋㅋ