MySQL MariaDB

MYSQL Trova i record corrispondenti con LIKE

MYSQL Trova i record corrispondenti con LIKE
L'operatore MySQL LIKE verifica se una particolare stringa di caratteri assomiglia al modello menzionato. Abbineremo una parte dei dati complessivi presenti in un segmento che non ha bisogno di corrispondere con precisione. Legheremo la nostra parola chiave con la sequenza delle informazioni disponibili nelle colonne utilizzando la query con caratteri jolly in varie combinazioni. I caratteri jolly MySQL sono simboli che aiutano a far corrispondere criteri difficili con i risultati della ricerca e sono stati utilizzati in combinazione con un operatore di confronto chiamato LIKE o un operatore di contrasto chiamato NOT LIKE.

MySQL fornisce questi due caratteri jolly per la costruzione di modelli.

Apri la shell del client da riga di comando di MySQL appena installata e digita la tua password MySQL per lavorarci sopra.

Abbiamo creato una nuova tabella chiamata 'insegnante' nel nostro database con diversi record al suo interno, come mostrato di seguito.

>> SELEZIONA * DAI dati.insegnante;

MySQL LIKE con percentuale % jolly:

Il segno di percentuale funziona in modo diverso durante l'utilizzo in luoghi diversi con gli alfabeti. Nel primo esempio, il segno di percentuale è stato utilizzato nell'ultima posizione del pattern per recuperare un record di due colonne, "TeachName" e "subject", dove il nome del soggetto inizia con "C". Dopo aver provato la query LIKE di seguito, abbiamo ottenuto il risultato seguente.

>> SELECT TeachName, oggetto FROM data subject.docente WHERE materia LIKE 'C%';

L'uso del segno di percentuale prima del modello significa che il modello corrisponderà all'ultima posizione di un valore. Quindi abbiamo cercato i record delle colonne "TeachName" e "subject" dove il nome dell'insegnante contenente l'alfabeto "a" nell'ultima posizione. Abbiamo trovato l'output di seguito.

>> SELECT TeachName, oggetto FROM data subject.insegnante WHERE TeachName LIKE '%a';

Se vuoi cercare lo schema corde a metà del valore, devi mettere il segno di percentuale sia all'inizio che alla fine dello schema. Abbiamo cercato il modello "am" tra i nomi degli insegnanti utilizzando la query indicata di seguito.

>> SELECT TeachName, oggetto FROM data subject.insegnante WHERE TeachName LIKE '%am%';

Usa il segno di percentuale nel mezzo del modello per cercare un valore corrispondente senza sapere cosa c'è nel mezzo di esso. Abbiamo visualizzato tutti i dati relativi al nome del docente che iniziano con 'S' e terminano con 'a'.

>> SELECT TeachName, oggetto FROM data.insegnante WHERE TeachName LIKE 'S%a';

MySQL LIKE con carattere di sottolineatura '_':

Useremo una nuova tabella chiamata "record" per comprendere l'operatore jolly di sottolineatura. Il carattere di sottolineatura jolly '_' funziona come un carattere quando posizionato in una posizione; ecco perché non potrebbe funzionare per più di due caratteri come fa un operatore percentuale.

>> SELEZIONA * DAI dati.disco;

Recuperiamo i valori corrispondenti posizionando il carattere di sottolineatura nell'ultima posizione del modello. Devi definire il numero esatto di caratteri in quel particolare nome. Altrimenti, la tua query non funzionerà. Vogliamo visualizzare i record del 'Nome' inizia con 'Za', dove i tre trattini bassi significano che gli ultimi tre caratteri di questo nome possono essere qualsiasi cosa, e il nome dovrebbe essere composto da soli 5 caratteri.

>> SELEZIONA * DAI dati.registra DOVE Nome LIKE 'Za___';

Posiziona l'operatore di sottolineatura all'inizio del modello per cercare il valore. Ciò implica che i caratteri iniziali di un valore stringa possono essere qualsiasi cosa. Dopo che il carattere specificato è stato utilizzato, il segno di percentuale indica che il valore della stringa può essere di qualsiasi lunghezza. Quindi, quando eseguiamo questa query, restituirà i valori con lunghezze diverse.

>> SELEZIONA * DAI dati.registra WHERE Nome LIKE '___a%';

Nella query seguente, abbiamo utilizzato il carattere di sottolineatura jolly nel mezzo del pattern. Ciò significa che il carattere prima dell'ultimo alfabeto può essere qualsiasi cosa tranne l'ultimo alfabeto deve essere "a". Il segno di percentuale mostra che la stringa può essere di qualsiasi lunghezza.

>> SELEZIONA * DAI dati.registra WHERE Nome LIKE '%_a';

Utilizzeremo il carattere di sottolineatura all'inizio e in qualsiasi punto del modello durante la ricerca nella colonna "Paese". Questo mostra che il secondo carattere di un modello deve essere 'u'.

>> SELEZIONA * DAI dati.registra WHERE Paese LIKE '_u_%';

MySQL LIKE con operatore NOT:

MySQL ti aiuta a unire l'operatore NOT con l'operatore LIKE per identificare una stringa che non corrisponde nemmeno a una sequenza particolare. Abbiamo cercato i record delle colonne: "Nome", "Città" e "Paese", dove il nome della nazione deve avere l'alfabeto "i" nella sua stringa in una qualsiasi delle posizioni intermedie. Abbiamo tre risultati per questa particolare query.

>> SELEZIONA * DAI dati.registra WHERE Paese NON MI PIACE '%i%;

MySQL LIKE con caratteri di escape:

La sequenza che desideri abbinare spesso include caratteri jolly, ad es.g., %10, 20, ecc. In questo scenario, potremmo usare la clausola ESCAPE per definire un simbolo di escape in modo tale che il simbolo jolly sia trattato come un carattere letterale da MySQL. Quando non menzioni specificamente un carattere di escape, l'operatore di escape standard è la barra rovesciata '\'. Cerchiamo i valori nella tabella con '_20' alla fine dei nomi delle città. Devi aggiungere '\' come carattere di escape jolly prima di '_20' perché il carattere di sottolineatura è esso stesso un carattere jolly. Mostra i dati delle città che hanno '_20' alla fine dei loro nomi. Il segno di percentuale indica che l'inizio del nome può essere di qualsiasi lunghezza e può avere qualsiasi carattere.

>> SELEZIONA * DAI dati.registra DOVE CITTÀ COME '%\_20';

Nell'esempio seguente, il segno '%' all'inizio e alla fine viene utilizzato come operatore di caratteri jolly come usato in precedenza. Il penultimo segno '%' è un modello da cercare e '\' è un carattere di escape qui.

>> SELEZIONA * DAI dati.registra DOVE CITTÀ COME '%\%%';

Il segno '%' è l'operatore jolly, '\' è il carattere di escape e l'ultimo segno '/' è un modello da cercare nell'ultima posizione dei nomi qui.

>> SELEZIONA * DAI dati.registra DOVE CITTÀ COME '%\/';

Conclusione:

Abbiamo finito con Like Clause & Wildcards, che sono strumenti importanti che aiutano a cercare informazioni che corrispondono a schemi complicati. Spero che questa guida ti abbia aiutato a raggiungere il tuo obiettivo effettivo di imparare gli operatori LIKE e gli operatori jolly.

I migliori giochi da riga di comando per Linux
La riga di comando non è solo il tuo più grande alleato quando usi Linux, ma può anche essere una fonte di intrattenimento perché puoi usarla per gioc...
Le migliori app di mappatura del gamepad per Linux
Se ti piace giocare su Linux con un gamepad invece di un tipico sistema di input di tastiera e mouse, ci sono alcune app utili per te. Molti giochi pe...
Strumenti utili per i giocatori Linux
Se ti piace giocare su Linux, è probabile che tu abbia utilizzato app e utilità come Wine, Lutris e OBS Studio per migliorare l'esperienza di gioco. O...