Wprowadzenie do znaków wieloznacznych

Znak wieloznaczny to znak lub grupa znaków, które można wyszukiwać i zamieniać w określonym ciągu. Symbole wieloznaczne są używane w zapytaniach MySQL z operatorem LIKE. Ten operator LIKE jest używany w klauzuli where zapytania MySQL. Za pomocą klauzuli where możemy wyszukać określony wzorzec dla określonej kolumny tabeli.

Przykład:

% wildcard służy do polubienia% ab znajdzie wszystkie ab w danym zestawie danych (rekordach), generując dane wyjściowe, takie jak, powyżej, obfitości, pochłaniania i tak dalej …

Dlaczego korzystamy z WildCards?

Jak dobrze znasz MySQL, mamy różne zapytania, takie jak INSERT, UPDATE, SELECT, DELETE itp. Ponieważ symbole wieloznaczne wykonują wyszukiwanie określonego wzorca, na obrazie pojawi się instrukcja SELECT wraz z klauzulą ​​WHERE, a nie inne Zapytania MySQL. Aby ułatwić wyszukiwanie za pomocą symboli wieloznacznych, przyjrzyjmy się prostemu przykładowi artystów i jego obrazowi. Powiedzmy, że w różnych regionach świata dostępne są różne obrazy stworzone przez różnych artystów w różnych cenach. Niech nazwa bazy danych będzie wybrana przez użytkownika „search_artist”

Nazwa tabeli to artysta

Oto zapytanie, aby utworzyć tabelę „wykonawca”

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;

Po utworzeniu tabeli wstawimy dane do tabeli

Zrzut danych dla tabeli `artist`

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');

Po wykonaniu powyższego zapytania zostanie utworzona następująca tabela

Procent

Przykład pierwszy: Teraz chcemy wiedzieć, który z artystów ma swoje malarstwo w krajach, w których nazwa kraju zaczyna się od „BA”

Zapytanie SZUKAJ przebiega w ten sposób

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

Wykonanie powyższego zapytania w MySQL

Dane wyjściowe zapytania

Przykład drugi: tutaj chcemy wiedzieć, który artysta ma swoje malarstwo w krajach zawierających „al”

Rozwiązaniem jest

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

Wykonanie powyższego zapytania w MySQL

Dane wyjściowe zapytania

W powyższych dwóch przykładach mamy pojedynczy symbol wieloznaczny, który jest „%”

Teraz sprawdzimy powiązane symbole wieloznaczne, takie jak symbol wieloznaczny _ (znak podkreślenia podkreślenia), słowo kluczowe escape, słowo kluczowe NOT LIKE itp.

Spójrzmy na drugi symbol wieloznaczny, którym jest _ podkreślenie symbol wieloznaczny

_ podkreślenie symbol wieloznaczny

Przykład pierwszy: Jest to również używane z instrukcją SELECT oraz klauzulą ​​where gdzie w _ oznacza dowolny pojedynczy znak, który może być dowolny

Rozwiązaniem jest
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

Wykonanie powyższego zapytania w MySQL

Dane wyjściowe zapytania

Przykład drugi:

Rozwiązaniem jest
SELECT * FROM artist WHERE `artist_country_code` LIKE 'A_'

Wykonanie powyższego zapytania w MySQL

Dane wyjściowe powyższego zapytania

Przed nurkowaniem w trzecim symbolu wieloznacznym zobaczymy kombinację powyższych dwóch symboli wieloznacznych, kombinację symboli wieloznacznych „_” i „%”

Kombinacja symboli wieloznacznych Znaczenie
GDZIE artist_painiting LIKE „Mo%”Zwraca wszystkie wartości zaczynające się od „Mo”
GDZIE nazwa_kraju artysty LUBI '% n'Zwraca wszystkie wartości, które kończą się na „n”
GDZIE nazwa_kraju_OBRAZOWEGO LUBI '% da%'Zwraca wszystkie wartości, które mają „da” w dowolnej pozycji
GDZIE nazwa_kraju wykonawcy LIKE „_o%”Zwraca wszystkie wartości, które mają „o” w drugiej pozycji
GDZIE nazwa artysty LIKE „L% i”Zwraca wszystkie wartości, które zaczynają się na „L”, a kończą na „i”

Spójrzmy na trzeci symbol wieloznaczny, który NIE JEST JAKO symbol wieloznaczny

NIE LUBIĆ symboli wieloznacznych

Tego operatora NIE PODOBNEGO, podobnie jak innych, używa się z klauzulą ​​where instrukcji select oraz znaku podkreślenia i procentu. Zwraca wiersze z tabeli, w których dany wzorzec nie pasuje.

Przykład pierwszy: Nie chcemy nagrań, w których malarstwo artysty ma cenę 600 USD i 650 USD

Rozwiązaniem jest :

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

Wykonanie powyższego zapytania w MySQL z wyjściem

Czwarta karta wieloznaczna to (lista znaków) z REGEXP

Przykład pierwszy: Chcemy, aby rekordy zawierające wszystkie znaki pasujące do wzorca występującego w nawiasie.

Rozwiązaniem jest :
SELECT * FROM artist WHERE `artist_country_name` REGEXP '^(po)'

Tutaj nazwa_kraju_realizatora zawierająca grupę znaków, takich jak po, jest wynikiem dwóch rekordów zawierających tylko Portugalię i Polskę.

Wykonanie powyższego zapytania w MySQL z wyjściem

Piąty symbol zastępczy to NIE ze słowem kluczowym REGEXP

Przykład: Chcemy, aby rekordy zawierające wszystkie znaki oprócz tych, które są obecne w nawiasie.

Rozwiązaniem jest :

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

Wykonanie powyższego zapytania w MySQL z wyjściem

Słowo kluczowe Escape szóstej karty wieloznacznej

Przykład pierwszy: w tym przykładzie nazwa artysty jest danymi wejściowymi, które są wyszukiwane w tabeli pod kątem określonego wzorca za pomocą słowa kluczowego Escape. Będzie to bardziej zrozumiałe w następującym przykładzie.

Rozwiązaniem jest :

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

Wykonanie powyższego zapytania w MySQL z wyjściem

Siódmy symbol wieloznaczny „|” słowo kluczowe, aby przeprowadzić wyszukiwanie na podstawie podanych alfabetów.

Przykład drugi: Chcemy zapisów, których imiona zaczynają się od znaku L lub S.

Rozwiązaniem jest :

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

Wykonanie powyższego zapytania w MySQL z wyjściem

Wniosek - Znaki wieloznaczne

W tym temacie mamy nadzieję, że nauczyłeś się% i _ symboli wieloznacznych z przykładami. Ponadto uczysz się NIE PODOBNY operator, wyszukiwane hasło ze słowem kluczowym Escape, (lista znaków) i inne. Wszystko to zostało wyjaśnione poprzez wykonanie zapytania SELECT z klauzulą ​​where w tabeli „artist”. Mamy nadzieję, że każdy temat stał się łatwiejszy do zrozumienia i zrozumienia.

Polecane artykuły

To był przewodnik po znakach wieloznacznych. Tutaj omówiliśmy, co to są znaki wieloznaczne, jak używać symboli wieloznacznych i jak utworzyć tabelę itp. Możesz również przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Symbole wieloznaczne w SQL
  2. Filtry w Tableau
  3. Zastosowania SQL
  4. Funkcje ciągów T-SQL
  5. Funkcje wyrażenia regularnego w języku Python (przykład)