책 내용 질문하기
=, IS, IN 구분
도서
2022 시나공 정보처리기사 실기
페이지
119
조회수
260
작성일
2022-04-11
작성자
탈퇴*원
첨부파일

안녕하세요? 

 

2권 41쪽(답은 119쪽) 문제 9번에서 ④ 답 후반부 제약조건이 where age is null;이잖아요.

 

age in null이라고 하면 안 되는건가요?

 

더불어 =, in, is 는 어떻게 구분해서 작성해야 하는건지

 

알려주시면 감사하겠습니다.

 

 

답변
2022-04-12 11:07:48

안녕하세요 길벗수험서 운영팀입니다.

 

is는 null에서만 사용합니다.

해당 속성의 값이 널 또는 널이 아니냐고 물을 때는 반드시 is를 사용합니다.

[속성] IS NULL

[속성] IS NOT NULL 

 

=와 in은 우측에 오는 값이 단수이냐 다수이냐 에 따라 달라집니다.

만약 where [속성] = (select..... ) 로 하위 질의를 사용한다고 보죠.

 

하위 select로 나오는 값이 특정 튜플의 속성 하나의 값이라면, =을 사용해도 in을 사용해도 상관없습니다.

하지만 select로 나오는 값이 2개 이상이라면 반드시 in을 사용해야 합니다.

 

하위질의가 아닐 때를 생각해보면 좀 더 쉽게 이해할 수 있습니다.

where [속성] in ([값1], [값2], ...)

where [속성] = [값1]

 

행복한 하루되세요 :)

  • 관리자
    2022-04-12 11:07:48

    안녕하세요 길벗수험서 운영팀입니다.

     

    is는 null에서만 사용합니다.

    해당 속성의 값이 널 또는 널이 아니냐고 물을 때는 반드시 is를 사용합니다.

    [속성] IS NULL

    [속성] IS NOT NULL 

     

    =와 in은 우측에 오는 값이 단수이냐 다수이냐 에 따라 달라집니다.

    만약 where [속성] = (select..... ) 로 하위 질의를 사용한다고 보죠.

     

    하위 select로 나오는 값이 특정 튜플의 속성 하나의 값이라면, =을 사용해도 in을 사용해도 상관없습니다.

    하지만 select로 나오는 값이 2개 이상이라면 반드시 in을 사용해야 합니다.

     

    하위질의가 아닐 때를 생각해보면 좀 더 쉽게 이해할 수 있습니다.

    where [속성] in ([값1], [값2], ...)

    where [속성] = [값1]

     

    행복한 하루되세요 :)

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.