보통 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))...
이런식이었으면 좋으련만 ㅋㅋ
'개발 > Database' 카테고리의 다른 글
timestamp의 가장 큰 값 (0) | 2016.09.12 |
---|---|
(MyBatis) Mysql tinyint(1) boolean이 integer로 바뀌는 현상 (0) | 2015.09.17 |
[myBatis] select시 NoSuchMethodException , <init>() error (3) | 2015.04.24 |
[iBatis/myBatis] #와 $의 차이점 (6) | 2013.04.11 |
MySql] JOIN 속도를 빠르게! EXPLAIN, STRAIGHT_JOIN (3) | 2012.11.18 |