MySQL MariaDB

MYSQL Finn samsvarende poster med LIKE

MYSQL Finn samsvarende poster med LIKE
MySQL LIKE-operatøren tester om en bestemt tegnstreng ligner det nevnte mønsteret. Vi vil matche en del av de samlede dataene som er til stede i et segment som ikke trenger å matche nøyaktig. Vi knytter nøkkelordet vårt sammen med sekvensen av informasjonen som er tilgjengelig i kolonner, ved å bruke jokertegnspørsmål i forskjellige kombinasjoner. MySQL jokertegn er symboler som hjelper med å matche vanskelige kriterier med søkeresultatene, og har blitt brukt i kombinasjon med en sammenligningsoperator som heter LIKE eller en kontrastoperator som heter NOT LIKE.

MySQL gir disse to jokertegnene for å lage mønstre.

Åpne det nylig installerte kommandolinjeklientskallet til MySQL og skriv inn MySQL-passordet ditt for å jobbe med det.

Vi har opprettet en ny tabell kalt 'lærer' i databasen vår med forskjellige poster i den, som vist nedenfor.

>> VELG * FRA data.lærer;

MySQL LIKE med prosentandel% jokertegn:

Prosenttegnet fungerer annerledes mens det brukes på forskjellige steder med alfabet. I det første eksemplet har prosenttegnet blitt brukt på den siste plasseringen av mønsteret for å hente en post med to kolonner, 'TeachName' og 'subject', der emnets navn starter med 'C'. Når vi prøver nedenstående LIKE-spørring, har vi resultatet nedenfor.

>> VELG TeachName, emne FRA data.lærer HVORDAN FAG SOM 'C%';

Bruk av prosenttegnet før mønsteret betyr at mønsteret vil matche den siste plasseringen av en verdi. Så vi har lett etter postene til kolonnene 'TeachName' og 'subject' der lærernavnet som inneholder alfabetet 'a' på den siste plasseringen. Vi har funnet utdataene nedenfor.

>> VELG TeachName, emne FRA data.lærer WHERE TeachName LIKE '% a';

Hvis du vil søke i strengmønsteret midt på verdien, må du plassere prosenttegnet både i begynnelsen og slutten av mønsteret. Vi har søkt etter 'am'-mønsteret mellom lærernes navn ved hjelp av nedenstående spørsmål.

>> VELG TeachName, emne FRA data.lærer WHERE TeachName LIKE '% am%';

Bruk prosenttegnet midt i mønsteret for å søke etter en samsvarende verdi uten å vite hva som kommer midt i det. Vi har vist alle dataene relatert til lærernavnet som begynner med 'S' og slutter med 'a'.

>> VELG TeachName, emne FRA data.lærer WHERE TeachName LIKE 'S% a';

MySQL LIKE med Underscore '_' jokertegn:

Vi vil bruke en ny tabell kalt 'record' for å forstå understreket jokertegnoperatør. Jokertegnet understreker '_' fungerer som ett tegn når det plasseres på et sted; det er derfor det ikke kan fungere for mer enn to tegn som en prosentoperatør gjør.

>> VELG * FRA data.ta opp;

La oss hente samsvarende verdier mens vi plasserer understrekningen på den siste av mønsterplasseringen. Du må definere nøyaktig antall tegn i det aktuelle navnet. Ellers vil spørringen ikke fungere. Vi vil vise postene til 'Navn' starter med 'Za', der de tre understrekningene betyr at de tre siste tegnene i dette navnet kan være hva som helst, og navnet skal bestå av bare 5 tegn.

>> VELG * FRA data.ta opp WHERE Name LIKE 'Za___';

Plasser understrekingsoperatøren i begynnelsen av mønsteret for å søke etter verdien. Dette innebærer at starttegnene til en strengverdi kan være hva som helst. Etter at det angitte tegnet har blitt brukt, betyr prosenttegnet at strengverdien kan være av hvilken som helst lengde. Så når vi utfører dette spørsmålet, vil det returnere verdiene med forskjellige lengder.

>> VELG * FRA data.registrer WHERE Name LIKE '___ a%';

I spørringen nedenfor har vi brukt jokertegnet understreket midt i mønsteret. Dette betyr at tegnet før det siste alfabetet kan være alt annet enn det siste alfabetet må være 'a'. Prosenttegnet viser at strengen kan ha en hvilken som helst lengde.

>> VELG * FRA data.registrer WHERE Navn LIKE '% _a';

Vi bruker understrekningen i begynnelsen og ethvert punkt i mønsteret mens vi søker i kolonnen 'Land'. Dette viser at det andre tegnet i et mønster må være 'u'.

>> VELG * FRA data.registrer WHERE Country LIKE '_u_%';

MySQL LIKE med NOT Operator:

MySQL hjelper deg å slå sammen NOT-operatøren med LIKE-operatøren for å identifisere en streng som ikke en gang samsvarer med en bestemt sekvens. Vi har søkt etter postene i kolonnene: 'Navn', 'By' og 'Land', der landnavnet må ha 'alfabetet' i strengen på et av de midterste stedene. Vi har tre resultater for akkurat dette spørsmålet.

>> VELG * FRA data.registrer WHERE Country NOT LIKE '% i%;

MySQL LIKE med Escape Characters:

Sekvensen du vil matche inkluderer ofte jokertegn, f.eks.g., % 10, 20 osv. I dette scenariet kan vi bruke ESCAPE-setningen til å definere et escape-symbol slik at wildcard-symbolet blir behandlet som et bokstavelig tegn av MySQL. Når du ikke spesifikt nevner en escape-karakter, er standard escape-operatør tilbakeslag '\'. La oss søke etter verdiene i tabellen som har '_20' på slutten av bynavn. Du må legge til '\' som et jokertegn-rømningstegn før '_20' fordi understrekningen i seg selv er et jokertegn. Det viser dataene til byene som har '_20' på slutten av navnet. Prosenttegnet betyr at starten på navnet kan være av hvilken som helst lengde og kan ha hvilken som helst karakter.

>> VELG * FRA data.registrer WHERE CITY LIKE '% \ _ 20';

I eksemplet nedenfor brukes '%' -tegnet ved start og slutt som jokertegnoperatør som brukt før. Det nest siste '%' -tegnet er et mønster som skal søkes, og '\' er et rømningskarakter her.

>> VELG * FRA data.registrer WHERE CITY LIKE '% \ %%';

'%' Tegnet er jokertegnoperatøren, '\' er rømningstegnet og det siste '/' tegnet er et mønster som skal søkes i den siste plasseringen av navnene her.

>> VELG * FRA data.ta opp HVOR BY LIKE '% \ /';

Konklusjon:

Vi har gjort med Like Clause & Wildcards, som er viktige instrumenter som hjelper med å jakte på informasjon som samsvarer med kompliserte mønstre. Jeg håper denne guiden har hjulpet deg med å nå ditt faktiske mål om å lære LIKE-operatører og jokertegnoperatører.

Topp Oculus App Lab-spill
Hvis du er Oculus-hodesettinnehaver, må du være klar over sideloading. Sidelading er prosessen med å installere ikke-butikkinnhold på hodesettet. Side...
Topp 10 spill å spille på Ubuntu
Windows-plattformen har vært en av de dominerende plattformene for spill på grunn av den enorme andelen spill som utvikles i dag for å støtte Windows ...
5 beste arkadespill for Linux
I dag er datamaskiner seriøse maskiner som brukes til spill. Hvis du ikke kan få den nye høye poengsummen, vil du vite hva jeg mener. I dette innlegge...