2012-02-27 3 views
5

에서 문자열을 읽는 방법, 나는이 값이 :테이블 열을 마우스 오른쪽 버튼으로 PLSQL

DV-2011-01-000004을

내가 어떻게이 부분을 얻을 수 있습니다 (데이터 유형은 VARCHAR2입니다) 문자열 '000004'? t-sql에는이 right() 함수가 있지만 PL SQL에서는 t-sql에서 right()와 같은 함수를 찾을 수 없습니다.

도움 주셔서 감사합니다.

+2

(나는 길이를 제공하지 않았기 때문에) 다음 SUBSTR가 끝날 때까지이 사건에서 잘라합니다 : 귀하의 요구 사항이었다 정확히 어떤 상태로 질문을 수정하십시오 - 당신을 마지막 '-'다음에 문자열을 가져 오거나, 가장 오른쪽 6자를 얻고 싶습니까? –

답변

8
substr('DV-2011-01-000004', length('DV-2011-01-000004')-6 + 1) 
+0

나는 그가 현재 일반적으로 사용하고 싶어한다고 생각합니다. –

+0

t-sql의 right()는 substr (길이 필요 문자)와 같습니다 – turbanoff

+0

그가 결정할 때, 나는 일반적으로 일반적인 해결책을위한 것이지 특정 것이 아닙니다. –

2

당신은 사용할 수 있습니다

SUBSTR('DV-2011-01-000004', INSTR('DV-2011-01-000004', '-', -1) +1) 

음의 시작 위치와 INSTR를 사용할 때 그가 마지막 인덱스를 찾을 수 있습니다 "-"를. 이 질문은 미래의 개발자 도움이 될 수 있도록에서

+0

pl/sql의 큰 따옴표는 식별자가 아니라 문자열로 사용됩니다. – turbanoff