Sebbene vari motori di database gestiscano le stringhe in modo diverso, funzionano tutti definendo un set di caratteri specifico che determina la codifica dei caratteri. Ogni set di caratteri e codifica determina come viene memorizzata una determinata stringa e può limitare le operazioni che vengono eseguite sulla stringa.
La manipolazione della stringa si riferisce alle varie azioni e metodi che è possibile applicare a una determinata stringa. Ad esempio, è possibile tagliare una stringa in una determinata posizione, rimuovere i caratteri di spazi bianchi o guidare da un valore di input e altro ancora.
In questo tutorial, apprenderemo una delle funzioni di manipolazione delle stringhe in Oracle. La funzione Instr () consente di cercare una sottostringa in una stringa di input e restituire la posizione della sottostringa.
Sintassi della funzione
Di seguito mostra la sintassi della funzione Instr () nei database Oracle:
Instr (stringa, substring [, start [, occorrenza]]);La funzione accetta i seguenti argomenti:
La funzione restituisce un numero intero positivo che determina la posizione della sottostringa all'interno della stringa. La funzione restituisce anche un numero intero 0 se la sottostringa non viene trovata.
Esempi
I seguenti esempi dimostrano su come utilizzare la funzione Instr () nei database Oracle.
Esempio 1:
Considera questo esempio che dimostra come utilizzare la funzione Instr () per individuare la prima occorrenza della sottostringa in una determinata stringa.
SELEZIONARE
Instr ('Benvenuti in Oracle Database!!',' Oracle ') come pos
Dal doppio;
In questo caso, la query fornita restituisce la posizione di avvio della sottostringa "Oracle" dalla "Welcome to Oracle Database!!" corda.
Pos
-----------
12
Esempio 2:
È bene tenere presente che la funzione instr () è sensibile al caso. Una dimostrazione di esempio è fornita nel seguente:
SELEZIONARE
Instr ('Benvenuti in Oracle Database!!',' oracle ') come pos
Dal doppio;
In questo esempio, cerchiamo la sottostringa "Oracle" con "O" minuscola nella stringa principale. Poiché non vi è alcun occorrenza corrispondente nella stringa principale, la funzione restituisce 0 come mostrato da segue:
Pos
--------
0
Esempio 3:
Possiamo anche cercare il secondo verificarsi di sottostringe impostando il parametro di occorrenza come dimostrato in questo esempio:
SELEZIONARE
Instr ("La volpe della fronte rapida saltò sopra il pigro bue", "bue", 2) come pos
Dal doppio;
In questo caso, diciamo alla funzione di restituire la posizione della seconda occorrenza per la sottostringa di bue.
Questo salta la prima occorrenza che si trova nella sottostringa "Fox" e restituisce la posizione della seconda occorrenza nella sottostringa "Ox".
Pos
----------
17
Esempio 4:
Possiamo anche eseguire una ricerca inversa specificando il verificarsi come un numero intero negativo. Una dimostrazione di esempio è la seguente:
SELEZIONARE
Instr ("La volpe della fronte rapida saltò sopra il pigro bue", "bue", -1) come pos
Dal doppio;
Produzione:
Pos
-------
41
Conclusione
In questo post, abbiamo coperto i fondamenti del lavoro con la funzione Oracle Instr () per individuare la posizione di una sottostringa all'interno di una determinata stringa. Sebbene la funzione funzioni bene in scenari specifici, ci sono alcune limitazioni da tenere a mente:
Detto questo, la funzione offre un modo minimo ed efficiente di cercare la posizione di una sottostringa in una stringa di input.