MSSQL에서 오라클로 컨버젼 시 case문에서 []사용 시 문제요 0 5 1,176

by 파랑비 [SQL Query] [2011.05.16 12:25:28]



v_id := case iv_id
when '0' then '1'
when '1' then '2'
when '2' then '[36]'
when '3' then '4'
end;

select * from itemadd where item_id = v_id
로 사용 하려 하는데
'2' 번에서 '[36]'은 MS에서는 in절로 사용이 되었는데
3과 6이 들어간 것을 가져오라고 사용이 되던 것을
컨버젼을 했는데 오라클에서는 '[36]' 이 되지를 않아서
다른 방법이 없나 해서 글을 올립니다.
by xx [2011.05.16 12:46:10]
iv_id in ('3','6')

by xx [2011.05.16 12:47:21]
아니네요..
무슨뜻인지 잘모르겠네요ㅡㅡ

by 마농 [2011.05.16 13:29:23]
[36] 이 In 처럼 사용된 것은 아닐 것입니다.
[36] 은 id가 한자리라는 가정하에 정규표현식처럼 사용되었을것 같습니다.
오라클 정규식은 다음과 같이 사용하시면 됩니다.
WHERE REGEXP_LIKE(item_id, v_id)

by 하얀비 [2011.05.16 13:38:55]
마농님 말씀처럼 IN으로 사용된게 아닙니다.

그냥 문자열입니다.

by 파랑비 [2011.05.16 14:08:14]
그러쿤요~ 모두 감사합니다^^
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입