SQL Wildcard Search

SQL Wildcard Search

I personaggi dei caratteri jolly sono personaggi speciali che fungono da segnaposto per rappresentare uno o più valori. Sono strumentali quando cercano schemi specifici nei tipi di testo o stringa.

In SQL, i caratteri jolly svolgono un ruolo essenziale in quanto ti consentono di eseguire una ricerca "fuzzy" di corrispondenza dei valori senza conoscere il valore esatto.

In questo articolo, esploreremo vari personaggi jolly in SQL standard. Tieni presente che l'implementazione può variare a seconda del motore del database.

Caratteri standard sql jolly

Esistono due tipi di caratteri jolly supportati in SQL standard:

Carattere Descrizione
% (segno percentuale) Abbinare zero o più caratteri
_ (segno di sottolineatura) Abbina qualsiasi singolo personaggio

Nota: sebbene tutti i motori del database supportino i caratteri jolly precedentemente menzionati, MS Access utilizza un asterisco (*) per rappresentare zero o più caratteri.

Utilizzo di operatori di jolly SQL

Usiamo la clausola simile per cercare modelli di corrispondenza utilizzando caratteri jolly. In alcuni casi, è possibile trovare la clausola Ilike, una versione insensibile al caso dell'operatore simile.

Esempio di utilizzo i

Ad esempio, per cercare tutti gli utenti i cui nomi iniziano con AA, possiamo eseguire una query come mostrato di seguito:

Seleziona column_name da table_name dove il nome come '%aa';

La query precedente dovrebbe cercare nella tabella specificata per tutti i record corrispondenti il ​​cui nome inizia con AA.

Un risultato di esempio è mostrato di seguito:

Aabid
Aadeep
Aadesh
Aadam
Aaron

Puoi anche usare l'operatore Ilike, che corrisponderà alla ricerca senza riguardo all'involucro.

Selezionare column_name da table_name dove il nome ilike '%aa';
-- Aabid
-- Aadeep
-- Aadesh
-- Aadam
-- Aaron

Nota: tutti i motori del database potrebbero non supportare l'operatore Ilike.

Puoi anche cercare se una stringa contiene una sottostringa specifica eseguendo la query come:

Seleziona column_name (s) da table_name dove il nome come '%sun%';

Nella sintassi precedente, SQL restituirà tutte le stringhe che contengono il sole della sottostringa.

Nota: utilizzare la funzione precedente con cautela. Può sostenere sanzioni significative per le prestazioni sul database, in particolare su un set di dati di grandi dimensioni.

Per cercare se una stringa termina con un carattere o una sottostringa specifica, eseguire il comando seguente:

Seleziona column_name (s) da table_name dove nome come '%.com ';

Il comando precedente dovrebbe restituire tutte le stringhe corrispondenti che si concludono .com

Esempio di utilizzo II

In alcuni casi, potresti voler cercare un carattere corrispondente. In questo caso, è possibile utilizzare un jolly di sottolineatura come segue:

Seleziona colonnie_name (s) da table_name in cui il nome come '_e%r%';

La query di esempio precedente dovrebbe cercare corrispondenze con un singolo carattere di avvio.

Ecco un risultato di esempio:

Peter

Negazione SQL

Sebbene l'operatore simile e ilike sia ottimo per la ricerca di record corrispondenti, potresti voler lavorare con record che non corrispondono alla ricerca di jolly specificata.

Per questo, puoi negare il risultato impostando la condizione come non come ilike come mostrato di seguito:

Seleziona column_name da table_name dove non come '%aa';

In questo caso, il comando precedente dovrebbe restituire tutti gli altri risultati tranne quello che inizia con AA.

Conclusione

Questo articolo ha esplorato utilizzando e lavorando con gli operatori jolly in SQL standard. Come accennato, alcuni motori di database possono implementare più o meno caratteri jolly. Controlla la documentazione per il tuo motore per saperne di più. Speriamo che tu abbia trovato questo articolo utile. Controlla gli altri articoli di suggerimento Linux per ulteriori suggerimenti e tutorial.