오라클 - casw..when

지환·2023년 11월 29일
0

오라클

목록 보기
3/10
post-thumbnail

문제

  • case...when구분을 활용할것
    member1테이블을 이용하여 아이디가 존재하지 않으면 -1을 반환하고
    아이디가 존재하면 비번까지 비교하여 같으면 1을 반환하고
    다르면 0을 반환하는 select문을 작성하시오
SELECT result
 
 FROM(
         SELECT CASE WHEN m_id =:id THEN 
	                CASE WHEN m_pw =:pw THEN 1
                ELSE 0
                END
                ELSE -1
               END as result 
              FROM member1
              Order by result desc
 )
   where rownum = 1;


두개를 요리해야함

인라인뷰에서 해당 로그인 처리에 대해 완료한뒤 결과를 뽑아서

외부 SELECT result 했을 떄 딱 하나만 나오게끔 설계하고 싶으면 어떻게 해야된다.

외부 조건 WHERE rownum =1 로 걸어주면 쿼리 결과 값에 대한 컬럼과 where = 1인 컬럼이

만나게 된다.

끝에 desc를 해서 기존에 맨 밑에 있던 1를 위로 끌어올렸다.

profile
아는만큼보인다.

0개의 댓글