Funzione di strumento Oracle

Funzione di strumento Oracle
Quando si lavora con i database, si incontrano spesso alcune istanze in cui è necessario archiviare una sequenza di caratteri in una determinata tabella. I tipi di dati di stringa vengono utilizzati per gestire tali dati, consentendo di archiviare informazioni testuali come nomi, indirizzi, descrizioni, blog, ecc.

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:

  • String - Questo argomento indica la stringa principale che si desidera cercare.
  • Substring: questo definisce la sottostringa che si desidera cercare all'interno della stringa principale.
  • start_position - Il parametro start_position consente di specificare la posizione in cui la funzione inizia a cercare la sottostringa specificata. Questo è un argomento opzionale; Se non impostata, la funzione inizia la ricerca all'inizio della stringa.
  • Occurrenza - Questo è anche un parametro opzionale che determina il verificarsi della sottostringa all'interno della stringa che si desidera individuare. Ad esempio, per trovare il primo occorrenza, imposta il valore dell'argomento su 1.

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:

  1. La funzione è sensibile al caso. Ciò significa che è necessario assicurarsi che la sottostringa e la stringa principale corrispondano all'involucro per la sottostringa.
  2. La funzione non supporta la corrispondenza dell'espressione regolare.
  3. La funzione è limitata solo ai tipi di stringhe; Potrebbe essere necessario lavorare con altre funzioni per altri blocchi di testo più grandi.

Detto questo, la funzione offre un modo minimo ed efficiente di cercare la posizione di una sottostringa in una stringa di input.