기준값 테이블 참고하여 등급 0 2 1,875

by BCPMAN [SQL Query] [2011.12.15 09:40:38]


기준값 기준으로 등급 구하려 하는데 잘안되네요. 결과처럼 나오게 하려면 어떻게 해야할까요 ㅠ

[기준값 테이블]

   ID    관심 주의 경계 심각
   A      2     3       4     5
   B      4     6      10    12



[측정 테이블]

ID  측정값
A       6
B      10

<<RESULT>>
ID  측정값  등급
A     6     심각
B    10     경계
by 도가니 [2011.12.15 10:41:55]
with tb_a as (
select 'A' id, 2 a, 3 b, 4 c, 5 d from dual union all
select 'B' id, 4 a, 6 b, 10 c, 12 d from dual
), tb_b as (
select 'A' id, 6 a from dual union all
select 'B' id, 10 a from dual
)
select tb_b.id, tb_b.a,
case
when tb_b.a <= tb_a.a then '관심'
when tb_b.a = tb_a.b then '주의'
when tb_b.a = tb_a.c then '경계'
when tb_b.a >= tb_a.d then '심각'
end b
from tb_a, tb_b
where tb_a.id = tb_b.id;

by 강민철 [2011.12.15 17:03:21]
제가 모르고 숫자타입인데 '2','3'.. 식으로 문자로 했더니 엉뚱한 결과가 나오더라구요. ^^ 참고하세요. 혹시 저같이 실수하시는분이 있을까봐서요.
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입