Oracle come

Oracle come

In Oracle e in altri database relazionali, la corrispondenza dei pattern è una funzionalità popolare che consente di cercare modelli di stringa utilizzando sintassi speciali. Ad esempio, è possibile cercare una sottostringa all'interno di un ampio set di stringhe utilizzando operatori e funzioni di corrispondenza.

Ciò lo rende molto utile per la costruzione di semplici clausole di ricerca senza incorrere in sanzioni significative per le prestazioni nel database.

In questo tutorial, ti imbatterai nell'operatore simile a Oracle per eseguire domande di abbinamento.

Oracle come l'operatore

L'operatore simile a Oracle consente di cercare un modello specifico in una determinata colonna. Ad esempio, puoi usarlo per trovare tutte le righe in cui il nome di un cliente inizia con il modello 'ja'.

Troverai spesso questo operatore utilizzato insieme ad altre clausole SQL, come la clausola Where, per filtrare i nostri risultati in base a uno schema specifico.

Possiamo esprimere la sintassi dell'operatore simile in SQL come mostrato di seguito:

Expression Like Pattern [Escape 'Escape_Character']
  1. Il parametro di espressione specifica la colonna che si desidera cercare.
  2. Il parametro pattern definisce il modello specifico che si desidera cercare. Il modello specificato può contenere caratteri jolly come % e _ per abbinare qualsiasi numero di caratteri o un singolo carattere, rispettivamente.
  3. Possiamo anche includere la clausola di fuga per specificare un carattere di fuga utilizzato per cercare i caratteri dei caratteri jolly.

Oracle come esempi dell'operatore

I seguenti esempi dimostrano come utilizzare l'operatore simile in una tabella Oracle.

Supponiamo di avere una tabella contenente le informazioni dei clienti come mostrato di seguito:

Esempio 1 - Usando i personaggi di % jolly

Possiamo usare i personaggi di % jolly per abbinare eventuali stringhe di zero o più personaggi. Ad esempio, possiamo trovare tutte le voci in una tabella contenente il nome "Will%".

Prendi la tabella dei dipendenti mostrata di seguito:

Seleziona first_name, last_name, stipendio
dai dipendenti
dove first_name come 'Will%'
Ordine di First_name;

La query precedente seleziona le colonne First_Name, last_name e lo stipendio dalla tabella dei dipendenti e ordina i valori risultanti dalla colonna First_Name.

Combiniamo anche una clausola dove in combinazione con un operatore simile con i personaggi % jolly per recuperare solo le righe in cui il nome inizia con "Will".

Questo dovrebbe restituire le righe come:

Possiamo anche usare il carattere % jolly per recuperare le righe che terminano in uno schema specifico.

Un esempio è mostrato di seguito:

Seleziona first_name, last_name, stipendio
dai dipendenti
dove first_name come '%er'
Ordine di First_name;

In questo caso, la query precedente dovrebbe restituire tutte le righe in cui il primo nome termina in "er". Un esempio che risulta risultante è mostrato di seguito:

L'operatore simile al database Oracle è sensibile al caso per impostazione predefinita, quindi è essenziale tenerlo a mente mentre cerca modelli specifici. Puoi usare altre funzioni, come inferiore e superiore, per negare questo comportamento.

Esempio 2 - Utilizzo della clausola di fuga

L'esempio seguente dimostra come utilizzare la clausola di fuga in Oracle Like Operator:

Seleziona First_name, last_name, stipendio, Commission_PCT
dai dipendenti
dove Commission_PCT come '20 \%'Escape' \ ';

La query precedente seleziona le colonne First_name, last_name, stipendio e Commission_PCT dalla tabella dei dipendenti. La clausola Where utilizza l'operatore simile con la clausola di escape per recuperare i registri in cui la colonna Commission_PCT contiene la stringa "20 %" (con un carattere % letterale, non un jolly).

In questo caso, sfuggiremo al carattere % con un carattere di backslash (\) quando cerchiamo la stringa del 20 %. Ciò consente all'operatore simile di cercare la stringa esatta '20 % 'invece di trattare il carattere % come un jolly.

Questa query restituirebbe tutte le righe dalla tabella dei dipendenti in cui la colonna Commission_PCT contiene la stringa esatta '20%', insieme alle colonne First_Name, Last_name e salari per quelle righe.

Conclusione

In questo post, hai imparato come utilizzare l'operatore simile nei database Oracle per cercare modelli specifici in una tabella. Vengono forniti diversi esempi per evidenziare usando i personaggi dei caratteri jolly e la clausola di escape.