반응형

TABLE = BOOK

BOOK_NO 

NAME 

EDITION 

 100

JAVA 

 100

JAVA 

 101

C++ 


이와 같은 데이터가 있다고 가정할 경우 책번호와 책이름을 조회하되 같은 책이 있을 경우 EDITION이 높은 것을 조회하고자 한다.


많은 방법이 있겠지만 한가지 방법을 소개한다.


SELECT BOOK_NO, NAME, EDITION

FROM BOOK

WHERE 1=1

AND (BOOK_NO, NAME, EDITION) IN (SELECT BOOK_NO, NAME, MAX(EDITION) AS EDITION FROM BOOK GROUP BY BOOK_NO, NAME)


이와 같은 방법으로 WHERE 조건에 괄호와 IN 그리고 서브쿼리를 사용하여 조건을 부여할 수 있다.

반응형

'Database' 카테고리의 다른 글

[SQL 튜닝] 2. 옵티마이저(Optimizer)  (0) 2019.04.22
[SQL 튜닝] 1. 실행계획(Execution plan)  (2) 2019.04.22
무결성 (Integrity)  (0) 2018.01.12
JOIN (조인)  (0) 2018.01.12
오라클 SQL Developer 2018.01.09  (0) 2018.01.09

+ Recent posts