Introduktion til jokertegn

Et jokertegn er et tegn eller en gruppe af tegn, der kan søges og erstattes i en bestemt given streng. Wildcard-tegn bruges med MySQL-forespørgsler med LIKE-operatøren. Denne LIKE-operatør bruges i hvor-klausulen i MySQL-forespørgslen. Med hvor klausul kan vi søge efter et bestemt mønster for en bestemt kolonne i tabellen.

Eksempel:

% jokertegn bruges til at lide% ab finder alle ab i et givet sæt data (poster), der producerer output som omkring, over, overflod, absorberende og så videre …

Hvorfor bruger vi WildCards?

Som du er bekendt med MySQL, har vi forskellige forespørgsler som INSERT, UPDATE, SELECT, DELETE osv. Da jokertegn gør jobbet med at søge efter et bestemt mønster, vil SELECT-sætningen sammen med WHERE-klausulen komme ind i billedet snarere end andre MySQL forespørgsler. Lad os undersøge et simpelt eksempel på kunstnere og hans malerieksempel for at gøre søgningen med jokertegn lettere. Sig, der er forskellige malerier skabt af forskellige kunstnere tilgængelige i forskellige regioner i verden til forskellige priser. Lad databasens navn være efter dit valg, siger “search_artist”

Bordnavnet er kunstneren

Her er opret en forespørgsel for at oprette tabellen 'kunstner'

CREATE TABLE `artist` (
`artist_id` int(11) NOT NULL,
`artist_name` varchar(255) NOT NULL,
`artist_painting` varchar(255) NOT NULL,
`artist_country_name` varchar(255) NOT NULL,
`artist_country_code` varchar(255) NOT NULL,
`artist_painting_price` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Når tabellen er oprettet, indsætter vi dataene i tabellen

Dumpingdata for tabel 'kunstner'

INSERT INTO `artist` (`artist_id`, `artist_name`, `artist_painting`, `artist_country_name`, `artist_country_code`, `artist_painting_price`) VALUES
(1, 'Leonardo Da Vinci', 'Mona Lisa', 'Angola', 'AO', '$500'),
(2, 'Edvard Munch', 'The Scream', 'Bahrain', 'BH', '$600'),
(3, 'Sistine Chapel by Michelangelo', 'The Creation of Adam', 'Bangladesh', 'BD', '$700'),
(4, 'Vincent Van Gogh', 'Sun Flowers', 'Malaysia', 'MY', '$550'),
(5, 'Rene Magritte', 'Ceci N'est pas une Pipe', 'Madagascar', 'MG', '$850'),
(6, 'Edvard Munch', 'The Scream', 'Portugal', 'PT', '$750'),
(7, 'Leonardo Da Vinci', 'Mona Lisa', 'Poland', 'PL', '$500'),
(8, 'Claude Monet', 'Poppies in a Field', 'Vietnam', 'VN', '$650');

Når du har udført ovenstående forespørgsel, oprettes følgende tabel

Procentprocenten

Eksempel 1: Nu vil vi vide, hvilken kunstner der har deres maleri i de lande, hvor landets navn starter med ”BA”

SØGNING-forespørgslen går sådan her

SELECT * FROM artist WHERE artist_country_name LIKE 'Ba%'
The result is country names starting with Ba are “Bahrain” and “Bangladesh”

Udførelse af ovenstående forespørgsel i MySQL

Output af forespørgslen

Eksempel to: Her vil vi gerne vide, hvilken kunstner der har deres maleri i de lande, der indeholder “al”

Løsningen er

SELECT * FROM artist WHERE artist_country_name LIKE '%al%'
The result is country names starting with Ba are “Malaysia” and “Portugal”

Udførelse af ovenstående forespørgsel i MySQL

Output af forespørgslen

I ovenstående to eksempler har vi et enkelt jokertegn, der er '%'

Nu tjekker vi for relaterede jokertegn som _ wildcard (understregede jokertegn), flugtord, IKKE LIKE nøgleord osv.

Lad os undersøge det andet jokertegn, der er _ understregning jokertegn

_ understregning jokertegn

Eksempel 1: Dette bruges også med SELECT-sætningen sammen med hvor klausul, hvor i _ står for ethvert enkelt tegn, hvilket kan være noget

Løsningen er
SELECT * FROM artist WHERE `artist_painting_price` LIKE '$5_0'
The result is painting price names with this pattern will give output as
$500, $550, $500 in the painting price column

Udførelse af ovenstående forespørgsel i MySQL

Output af forespørgslen

Eksempel to:

Løsningen er
SELECT * FROM artist WHERE `artist_country_code` LIKE 'A_'

Udførelse af ovenstående forespørgsel i MySQL

Output af ovenstående forespørgsel

Før vi dykker i det tredje jokertegn, ser vi kombinationen af ​​ovenstående to wildcards, kombinationen af ​​'_' og '%' jokertegn.

Wildcard-kombination Betyder
HVOR artist_painiting LIKE 'Mo%'Returnerer alle værdier, der starter med “Mo”
HVOR artist_country_name LIKE '% n'Returnerer alle værdier, der slutter med “n”
HVOR artist_country_name LIKE '% da%'Returnerer alle værdier, der har “da” i enhver position
HVOR artist_country_name LIKE '_o%'Returnerer alle værdier, der har “o” i den anden position
HVOR artist_navn LIKE 'L% i'Returnerer alle værdier, der starter med “L” og slutter med “i”

Lad os undersøge det tredje jokertegn, der IKKE LIGER jokertegn

LIKER IKKE jokertegn

Denne IKKE LIKE operatør som andre bruges med hvor klausulet for den valgte sætning og understregningen og procentvis jokertegn. Det returnerer rækkerne fra tabellen, hvor det givne mønster ikke stemmer overens.

Eksempel 1: Vi ønsker ikke de poster, hvor kunstnermalingen har en pris på $ 600 og $ 650

Løsningen er:

SELECT * FROM artist WHERE `artist_painting_price` NOT LIKE '$5%'

Udførelse af ovenstående forespørgsel i MySQL med output

Det fjerde wildcard er (karakterliste) med REGEXP

Eksempel 1: Vi vil have posterne, der indeholder alle tegn, der matcher det mønster, der findes i beslaget.

Løsningen er:
SELECT * FROM artist WHERE `artist_country_name` REGEXP '^(po)'

Her resulterer artist_country_name, der indeholder gruppen af ​​tegn som po, i to poster, der kun indeholder Portugal og Polen.

Udførelse af ovenstående forespørgsel i MySQL med output

Det femte wildcard er IKKE med REGEXP nøgleord

Eksempel: Vi vil have posterne, der indeholder alle tegn undtagen de tegn, der findes i beslaget.

Løsningen er:

SELECT * FROM artist WHERE artist_country_name REGEXP '^(^po)'

Udførelse af ovenstående forespørgsel i MySQL med output

Det sjette nøgleord for undslip af wildcard

Eksempel 1: I dette eksempel er kunstnerens navn det input, der søges i en tabel efter et givet mønster ved hjælp af et flugtord. Det vil være mere tydeligt med følgende eksempel.

Løsningen er:

SELECT * FROM artist WHERE `artist_name` LIKE '%$ Da %' ESCAPE '$'

Udførelse af ovenstående forespørgsel i MySQL med output

Det syvende jokertegn '|' nøgleord til at udføre en søgning baseret på givne alfabeter.

Eksempel to: Vi vil have de poster, hvis fornavne starter med tegnet L eller S

Løsningen er:

SELECT * FROM artist WHERE `artist_painting` REGEXP '^(L|S)'

Udførelse af ovenstående forespørgsel i MySQL med output

Konklusion - Wildcard-tegn

Med dette emne håber vi, at du lærte% og _ jokertegn med eksempler. Du lærer også, IKKE LIKE Operatør, søgeforespørgslen med nøgleordet for flugt, (karakterlisten) og andre. Alt dette blev gjort klart ved at udføre en SELECT forespørgsel med en hvor klausul på "kunstner" -bordet. Forhåbentlig blev hvert emne lettere at forstå og forstå.

Anbefalede artikler

Dette har været en guide til jokertegn. Her har vi diskuteret, hvad der er jokertegn, hvordan man bruger jokertegn, og hvordan man opretter en tabel osv. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Jokertegn i SQL
  2. Filtre i Tableau
  3. Anvendelser af SQL
  4. T-SQL strengfunktioner
  5. Regex-funktioner i Python (eksempel)

Kategori: