W Oracle użyj funkcji substr w połączeniu z funkcją instr, aby wyodrębnić ciąg z ciągu. Poniżej znajdują się przykłady.
Funkcja Substr z przykładami funkcji Instr
1. Wyodrębnij ciąg po określonym znaku
Poniższy przykład wyodrębni resztę ciągu po znaku $.
set serveroutput on; declare v_string varchar2(20) := 'USD$500.67'; v_string1 varchar2(20); begin v_string1 := substr(v_string, instr(v_string, '$') +1); dbms_output.put_Line(v_string1); end; /
Wyjście
500.67 PL/SQL procedure successfully completed.
2. Wyodrębnij ciąg po określonym znaku do innego określonego znaku
Ten przykład wyodrębnia od pierwszego określonego ciągu „$” do drugiego określonego ciągu „.”.
set serveroutput on; DECLARE v_string VARCHAR2 (20) := 'USD$500.67'; v_string1 VARCHAR2 (20); BEGIN v_string1 := SUBSTR (v_string, INSTR (v_string, '$'), INSTR (v_string, '.') - INSTR (v_string, '$')); DBMS_OUTPUT.put_Line (v_string1); END; /
Wyjście
$500 PL/SQL procedure successfully completed.
Zobacz też:
- Policz liczbę znaków w ciągu w Oracle
- Jak pobrać dane z kursora za pomocą pętli for
- Jak wykonać blok PL/SQL w Oracle