Introduction aux caractères génériques

Un caractère générique est un caractère ou un groupe de caractères pouvant être recherché et remplacé dans une chaîne donnée. Les caractères génériques sont utilisés avec les requêtes MySQL avec l'opérateur LIKE. Cet opérateur LIKE est utilisé dans la clause where de la requête MySQL. Avec la clause where, nous pouvons rechercher un modèle particulier pour une colonne particulière de la table.

Exemple:

% wildcard est utilisé pour aimer% ab trouvera tous les ab dans un ensemble donné de données (enregistrements) produisant la sortie comme about, above, abondance, absorbant et ainsi de suite…

Pourquoi utilisons-nous des WildCards?

Comme vous connaissez MySQL, nous avons diverses requêtes comme INSERT, UPDATE, SELECT, DELETE, etc. Puisque les caractères génériques font le travail de recherche d'un modèle particulier, l'instruction SELECT ainsi que la clause WHERE apparaîtront dans l'image, plutôt que d'autres Requêtes MySQL. Pour faciliter la recherche avec des caractères génériques, examinons un exemple simple d'artistes et son exemple de peintures. Disons, il existe différentes peintures créées par différents artistes disponibles dans différentes régions du monde à des prix différents. Laissez le nom de la base de données de votre choix dire "search_artist"

Le nom de la table est l'artiste

Voici la création d'une requête pour créer la table 'artiste'

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;

Une fois la table créée, nous insérerons les données dans la table

Données de dumping pour la table «artiste»

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

Une fois que vous avez exécuté la requête ci-dessus, le tableau suivant sera créé

Le% pourcentage

Exemple un: Maintenant, nous voulons savoir quel artiste qui a sa peinture dans les pays où le nom du pays commence par «BA»

La requête SEARCH va comme ceci

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

Exécuter la requête ci-dessus dans MySQL

Sortie de la requête

Exemple 2: Ici, nous voulons savoir quel artiste a sa peinture dans les pays contenant "al"

La solution est

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

Exécuter la requête ci-dessus dans MySQL

Sortie de la requête

Dans les deux exemples ci-dessus, nous avons un seul caractère générique qui est «%»

Maintenant, nous allons vérifier les caractères génériques connexes comme le caractère générique _ (le caractère générique de soulignement), le mot clé d'échappement, le mot clé NOT LIKE, etc.

Examinons le deuxième caractère générique, qui est le caractère générique _

_ souligner le caractère générique

Exemple un: Ceci est également utilisé avec l'instruction SELECT avec la clause where où dans le _ représente n'importe quel caractère unique, qui pourrait être n'importe quoi

La solution est
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

Exécuter la requête ci-dessus dans MySQL

Sortie de la requête

Exemple deux:

La solution est
SELECT * FROM artist WHERE `artist_country_code` LIKE 'A_'

Exécuter la requête ci-dessus dans MySQL

Sortie de la requête ci-dessus

Avant de plonger dans le troisième caractère générique, nous verrons la combinaison des deux caractères génériques ci-dessus, la combinaison des caractères génériques «_» et «%»

Combinaison générique Sens
O artist artist_painiting COMME 'Mo%'Renvoie toutes les valeurs commençant par «Mo»
OERE artist_country_name LIKE '% n'Renvoie toutes les valeurs qui se terminent par «n»
OERE artist_country_name LIKE '% da%'Renvoie toutes les valeurs qui ont «da» dans n'importe quelle position
OERE artist_country_name COMME '_o%'Renvoie toutes les valeurs qui ont «o» en deuxième position
OERE artist_name LIKE 'L% i'Renvoie toutes les valeurs commençant par «L» et se terminant par «i»

Examinons le troisième caractère générique qui n'est PAS COMME un caractère générique

PAS COMME joker

Cet opérateur NOT LIKE, comme les autres, est utilisé avec la clause where de l'instruction select et le caractère générique de soulignement et de pourcentage. Il renvoie les lignes de la table où le modèle donné ne correspond pas.

Exemple un: Nous ne voulons pas des enregistrements où l'artiste peignant a le prix de 600 $ et 650 $

La solution est:

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

Exécuter la requête ci-dessus dans MySQL avec sortie

Le quatrième caractère générique est (liste de caractères) avec REGEXP

Exemple un: Nous voulons que les enregistrements qui contiennent tous les caractères qui correspondent au modèle présent dans la parenthèse.

La solution est:
SELECT * FROM artist WHERE `artist_country_name` REGEXP '^(po)'

Ici, le nom artist_country_name contenant le groupe de caractères comme po résulte en deux enregistrements qui ne contiennent que le Portugal et la Pologne.

Exécuter la requête ci-dessus dans MySQL avec sortie

Le cinquième caractère générique n'est PAS avec le mot clé REGEXP

Exemple: Nous voulons que les enregistrements contiennent tous les caractères sauf ceux qui sont présents dans la parenthèse.

La solution est:

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

Exécuter la requête ci-dessus dans MySQL avec sortie

Le sixième mot-clé d'échappement Wildcard

Exemple 1: Dans cet exemple, le nom de l'artiste est l'entrée recherchée dans un tableau pour un motif donné à l'aide d'un mot-clé d'échappement. Ce sera plus clair avec l'exemple suivant.

La solution est:

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

Exécuter la requête ci-dessus dans MySQL avec sortie

Le septième caractère générique '|' mot-clé pour effectuer une recherche basée sur des alphabets donnés.

Exemple deux: nous voulons que les enregistrements dont les prénoms commencent par le caractère L ou S

La solution est:

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

Exécuter la requête ci-dessus dans MySQL avec sortie

Conclusion - Caractères génériques

Avec ce sujet, nous espérons que vous avez appris les caractères génériques% et _ avec des exemples. En outre, vous apprenez l'opérateur NOT LIKE, la requête de recherche avec le mot-clé d'échappement, la (liste de caractères) et d'autres. Tout cela a été rendu clair en effectuant une requête SELECT avec une clause where sur la table «artist». J'espère que chaque sujet est devenu plus facile à comprendre et à saisir.

Articles recommandés

Cela a été un guide pour les caractères génériques. Ici, nous avons discuté de ce que sont les caractères génériques, comment utiliser les caractères génériques et comment créer un tableau, etc. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -

  1. Caractère générique dans SQL
  2. Filtres dans Tableau
  3. Utilisations de SQL
  4. Fonctions de chaîne T-SQL
  5. Fonctions Regex en Python (exemple)