chococake
248
2021-07-24 21:16:59
3
184

sql 쿼리 조건문 질문입니다.


where job = 'MANAGER' or 'SALESMAN' and salary not in (950, 1300, 1600);


직업이 MANAGER나 SALESMAN이면서 급여가 950, 1300, 1600이 아닌 사람을 고르려고 할 때


조건문을 이렇게 했는데 안되더라구요...


뭐가 잘못된건가요??

0
  • 답변 3

  • 코다닥
    219
    2021-07-24 21:24:55 작성 2021-07-24 21:25:18 수정됨

    괄호가 문제가 되지 않을까요? 

    where( job = 'MANAGER' or 'SALESMAN') and (salary not in (950, 1300, 1600))


    and 연산자가 or 연산자보다 더 빨리 계산된다고하네요. 찾아보니 그렇다고함

  • bluetang
    137
    2021-07-24 21:31:42

    where job in ( 'MANAGER' , 'SALESMAN' ) and salary not in (950, 1300, 1600);

  • createA
    86
    2021-07-24 21:41:06

    where job = 'MANAGER' or 'SALESMAN' and salary not in (950, 1300, 1600);


    job 의 조건이 잘못걸려있다고 생각합니다.

    job =  'MANAGER' or job = 'SALESMANand salary not in (950, 1300, 1600);

    라고 수정을 하면되지만 괄호를 추가하여 조건을 좀더 상세하게 걸어야할것같습니다.


    ( job =  'MANAGER' or job = 'SALESMAN' ) and salary not in (950, 1300, 1600);

  • 로그인을 하시면 답변을 등록할 수 있습니다.