INSTR (Română)
Sintaxă
  
 
Descrierea illustration instr.gif
Scop
 Căutarea funcțiilor INSTR string pentru substring. Funcția returnează un număr întreg care indică poziția caracterului din string care este primul caracter al acestei apariții. INSTR calculează șirurile folosind caractere definite de setul de caractere de intrare. INSTRB folosește octeți în loc de caractere. INSTRC utilizează caractere complete Unicode. INSTR2 utilizează puncte de cod UCS2. INSTR4 folosește puncte de cod UCS4. 
- 
positioneste un întreg diferit de zero care indică caracterulstringunde Oracle Database începe căutarea. Dacăpositioneste negativ, atunci Oracle contează înapoi de la sfârșitulstringși apoi caută înapoi din poziția rezultată.
- 
occurrenceeste un număr întreg care indică aparițiastringpe care Oracle ar trebui să o caute. Valoareaoccurrencetrebuie să fie pozitivă.
 Atât string, cât și substring poate fi oricare dintre tipurile de date CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB sau NCLOB. Valoarea returnată este de NUMBER tip de date. 
 Ambele position și occurrence trebuie să aibă un tip de date NUMBER sau orice tip de date care poate fi implicit convertit în NUMBER și trebuie să se rezolve într-un număr întreg. Valorile implicite ale position și occurrence sunt 1, ceea ce înseamnă că Oracle începe să caute la primul caracter din string pentru prima apariție a substring. Valoarea returnată este relativă la începutul string, indiferent de valoarea position și este exprimată în caractere. Dacă căutarea nu reușește (dacă substring nu apare occurrence ori după caracterul position din string), atunci valoarea returnată este 0. 
Vezi și:
Tabelul 2-10, „Matrice de conversie a tipului implicit” pentru mai multe informații despre conversia implicită
Exemple
 Următorul exemplu caută șirul CORPORATE FLOOR, începând cu al treilea caracter, pentru șirul „OR„. Returnează poziția în CORPORATE FLOOR la care începe a doua apariție a „OR” : 
SELECT INSTR("CORPORATE FLOOR","OR", 3, 2) "Instring" FROM DUAL; Instring---------- 14
 În exemplul următor, Oracle contează înapoi de la ultimul caracter până la al treilea caracter de la sfârșit, care este primul O în FLOOR. Oracle caută apoi înapoi pentru a doua apariție a OR și constată că această a doua apariție începe cu al doilea caracter din șirul de căutare: 
SELECT INSTR("CORPORATE FLOOR","OR", -3, 2)"Reversed Instring" FROM DUAL; Reversed Instring----------------- 2
Următorul exemplu presupune un set de caractere de bază de date cu doi octeți.
SELECT INSTRB("CORPORATE FLOOR","OR",5,2) "Instring in bytes" FROM DUAL;Instring in bytes----------------- 27