댓글 검색 목록

[sql] SELECT query 에서 IN 연산자 사용

페이지 정보

작성자 운영자 작성일 15-05-11 09:29 조회 2,452 댓글 0

SELECT query 에서 IN 연산자 사용한 예를 살펴봅니다.

  

mysql> SELECT Name, Category, InStock

    -> FROM Topic

    -> WHERE Category IN ('Blues', 'Jazz')

    -> ORDER BY Name; 

위에서 보면 IN연산자는 Where안에서 사용되는 것을 볼 수 있습니다. 조건에 더 강력한 무기가 되는겁니다. 칼럼에서 IN 안에 주어진 값만 조건으로 지정하게 됩니다.

 

IN의 값으로 하부 SELECT Query가 올 수 있습니다.

mysql> SELECT BookTitle, Copyright

    -> FROM Books

    -> WHERE Copyright IN

    ->    (

    ->       SELECT b.copyright

    ->       FROM Books AS b JOIN AuthorBook AS ab USING (BookID)

    ->          JOIN Authors AS a USING (AuthID)

    ->       WHERE AuthLN='MySQL'

    ->    )

    -> ORDER BY BookTitle; 

 

NOT IN을 사용할 수도 있습니다.

mysql> SELECT BookTitle, Copyright

    -> FROM Books

    -> WHERE Copyright NOT IN

    ->    (

    ->       SELECT b.copyright

    ->       FROM Books AS b JOIN AuthorBook AS ab USING (BookID)

    ->          JOIN Authors AS a USING (AuthID)

    ->       WHERE AuthLN='MySQL'

    ->    )

    -> ORDER BY BookTitle; 

 

NOT IN 은 <> ALL 로 표현할 수 있습니다.

mysql> SELECT id FROM employee WHERE id NOT IN (SELECT id FROM job); 

또는

mysql> SELECT id FROM employee WHERE id <> ALL (SELECT id FROM job);

 

 

댓글목록 0

등록된 댓글이 없습니다.

웹학교 로고

온라인 코딩학교

코리아뉴스 2001 - , All right reserved.