겹치는 값 명칭하기 0 3 666

by 쥬발자 [SQL Query] [2022.02.17 10:59:46]


4개의 각각의 조건이 있을때 1,2,3 까지는 값의 조건이고 

4번째 조건에서 앞서 나눈 세개의 종류 중 2개이상 겹치면 중복건이라고 칭해야 할때 어떻게 조건을 줘야 할까요..?

 

case를 써서 3번째 조건까지는 나눴는데 4번째 조건에서 막힙니다...ㅠㅠㅠㅠㅠㅠ도와주세요 ㅠㅠㅠ

by 마농 [2022.02.17 11:05:37]

설명만으로는 질문이 이해가 잘 안됩니다.
샘플 자료을 보여주세요.
원본 대비 결과표.


by 쥬발자 [2022.02.17 11:10:53]
1. 몸무게가 100이고 키가 100이상이면 가

2. 나이가 20이하고 키가 100이상이면 나

3. 나이가 20이상이고 몸무게가 20이상이면 다

4.  위 조건 중 2가지 이상이 겹치면 중복건  > 이 부분에서 막혔어요..

 

이라는 조건을 가지고 쿼리를 짜야해요.... (조건은 임의로 대충 줘봤습니다)


by 마농 [2022.02.17 13:19:47]
SELECT wt, ht, ag
     , CASE WHEN c1 + c2 + c3 > 1 THEN 4
            WHEN c1 = 1 THEN 1
            WHEN c2 = 1 THEN 2
            WHEN c3 = 1 THEN 3
            ELSE 0 END flag
  FROM (SELECT wt, ht, ag
             , CASE WHEN wt >= 100 AND ht >= 100 THEN 1 ELSE 0 END c1
             , CASE WHEN ag <=  20 AND ht >= 100 THEN 1 ELSE 0 END c2
             , CASE WHEN ag >=  20 AND wt >=  20 THEN 1 ELSE 0 END c3
          FROM t
        ) a
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입