Sissejuhatus metamärkide märkidesse
Metamärgi märk on märk või tähemärkide rühm, mida saab konkreetses stringis otsida ja asendada. Metamärke kasutatakse koos MySQL-i päringutega LIKE-operaatoriga. Seda LIKE-operaatorit kasutatakse MySQL-i päringu if-klauslis. Millise klausliga saame tabeli konkreetse veeru jaoks kindlat mustrit otsida.
Näide:
% metamärki kasutatakse, et% ab leiaks antud andmestikust (kirjetest) kõik ab andmed, mis annavad väljundi, näiteks umbes, arvukus, imavus ja nii edasi …
Miks me kasutame metamärke?
Nagu olete MySQL-iga tuttav, on meil mitmesuguseid päringuid, näiteks INSERT, UPDATE, SELECT, DELETE jne. Kuna metamärgid teevad tööd konkreetse mustri otsimisel, tuleb pildile SELECT-lause koos WHERE-klausliga, mitte teiste MySQL päringud. Võltskaartidega otsimise hõlbustamiseks uurime lihtsat näidet kunstnike ja tema maalide kohta. Oletame, et eri kunstnike loodud maalid on saadaval erinevates maailma piirkondades erineva hinnaga. Laske enda valitud andmebaasi nime öelda „search_artist”
Tabeli nimi on kunstnik
Siin on päringu loomine tabeli "artist" loomiseks
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;
Pärast tabeli loomist sisestame andmed tabelisse
Dumpinguandmed tabeli "kunstniku" kohta
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');
Kui olete ülaltoodud päringu täitnud, luuakse järgmine tabel
Protsent%
Esimene näide: nüüd tahame teada, kes on kõik kunstnikud, kes maalivad neid maades, kus riigi nimi algab tähega “BA”
Päring SEARCH läheb selliseks
SELECT * FROM artist WHERE artist_country_name LIKE 'Ba%'
The result is country names starting with Ba are “Bahrain” and “Bangladesh”
Ülaltoodud päringu täitmine MySQL-is
Päringu väljund
Teine näide: siin tahame teada, millise kunstniku maalid on riikides, mis sisaldavad sõna "al"
Lahendus on
SELECT * FROM artist WHERE artist_country_name LIKE '%al%'
The result is country names starting with Ba are “Malaysia” and “Portugal”
Ülaltoodud päringu täitmine MySQL-is
Päringu väljund
Kahe ülaltoodud näite korral on meil üks tärk, mis on '%'
Nüüd kontrollime seotud metamärke, näiteks _ metamärk (alamkriipsuga metamärk), põgenemissõna, EI OLE märksõna jne
Uurime teist metamärki, mis on _ alajooneline metamärk
_ alamkriipsuga metamärk
Esimene näide: Seda kasutatakse ka SELECT-avaldusega koos lausega _, kus _ tähistab mis tahes üksikut märki, mis võib olla ükskõik
Lahendus onSELECT * 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
Ülaltoodud päringu täitmine MySQL-is
Päringu väljund
Teine näide:
Lahendus onSELECT * FROM artist WHERE `artist_country_code` LIKE 'A_'
Ülaltoodud päringu täitmine MySQL-is
Ülaltoodud päringu väljund
Enne sukeldumist kolmandasse metamärki näeme kahe ülaltoodud metamärgi kombinatsiooni, '_' ja '%' metamärkide kombinatsiooni
Metamärgi kombinatsioon | Tähendus |
KUS artist_valutas LIKE 'Mo%' | Tagastab kõik väärtused, mis algavad tähega "Mo" |
KUS artist_country_name LIKE '% n' | Tagastab kõik väärtused, mis lõpevad n-ga |
KUS artist_country_name LIKE '% da%' | Tagastab kõik väärtused, mille mis tahes positsioonis on „da” |
KUS artist_country_name LIKE '_o%' | Tagastab kõik väärtused, mille teises positsioonis on „o” |
KUST kunstniku nimi LIKE 'L% i' | Tagastab kõik väärtused, mis algavad tähega “L” ja lõpevad “i” |
Vaadakem lähemalt kolmandat metamärki, mis EI OLE LIKE metamärk
EI MIDA metamärki
Seda MITTE SELLELE operaatoril nagu teisi kasutatakse koos valitava lause klausliga ning ala- ja protsendimärgiga. Tagastab tabelist read, kus antud muster ei kattu.
Esimene näide: me ei taha plaate, kus kunstniku maalimise hind on 600 dollarit ja 650 dollarit
Lahendus on:
SELECT * FROM artist WHERE `artist_painting_price` NOT LIKE '$5%'
Ülaltoodud päringu täitmine MySQL-is väljundiga
Neljas metamärk on (tegelaste nimekiri) koos REGEXP-ga
Esimene näide: soovime kirjeid, mis sisaldavad kõiki märke, mis vastavad sulgudes olevale mustrile.
Lahendus on:SELECT * FROM artist WHERE `artist_country_name` REGEXP '^(po)'
Siin saab art_country_name, mis sisaldab märgirühma nagu po, kaheks kirjeks, mis sisaldavad ainult Portugali ja Poolat.
Ülaltoodud päringu täitmine MySQL-is väljundiga
Viies metamärk on EI märksõnaga REGEXP
Näide: soovime kirjeid, mis sisaldavad kõiki tähemärke, välja arvatud need, mis esinevad sulgudes.
Lahendus on:
SELECT * FROM artist WHERE artist_country_name REGEXP '^(^po)'
Ülaltoodud päringu täitmine MySQL-is väljundiga
Kuues metamärgi põgenemise märksõna
Esimene näide: selles näites on esitaja nimi sisend, mida otsitakse tabelist antud mustri järgi, kasutades põgenemissõna. Selle saab selgemaks järgmise näitega.
Lahendus on:
SELECT * FROM artist WHERE `artist_name` LIKE '%$ Da %' ESCAPE '$'
Ülaltoodud päringu täitmine MySQL-is väljundiga
Seitsmes metamärk '|' märksõna tähestikul põhineva otsingu tegemiseks.
Teine näide: soovime kirjeid, mille eesnimed algavad tähega L või S
Lahendus on:
SELECT * FROM artist WHERE `artist_painting` REGEXP '^(L|S)'
Ülaltoodud päringu täitmine MySQL-is väljundiga
Järeldus - metamärgid
Loodetavasti olete selle teemaga õppinud% ja _ metamärke koos näidetega. Samuti saate teada operaatorist MITTE LIKE, otsingupäringut koos põgenemissõnaga, (märkide loetelu) ja muid. Kõik see tehti selgeks, valides VALI päringu, kus klausel tabelis “esitaja”. Loodetavasti sai iga teema hõlpsamini mõistetavaks ja hoomatavaks.
Soovitatavad artiklid
See on olnud looduslike märkide tegemise juhend. Siin oleme arutanud, mis on metamärgid, kuidas metamärke kasutada ja kuidas tabelit luua jne. Lisateabe saamiseks võite tutvuda ka meie teiste soovitatud artiklitega -
- Metamärk SQL-is
- Filtrid Tableau'is
- SQL-i kasutusviisid
- T-SQL stringifunktsioonid
- Regexi funktsioonid Pythonis (näide)