Comment ajouter un cas à une requête MySQL?

Comment ajouter un cas à une requête MySQL?
Dans MySQL, l'instruction CASE décrit les moyens de gérer une boucle pour exécuter un certain ensemble de conditions et renvoyer le cas correspondant à l'utilisation de If-Else. C'est une déclaration de contrôle qui valide un ensemble de conditions. S'il y a un cas trouvé vrai, alors il renvoie la valeur. Si aucun cas ne correspond, il renvoie la valeur else. Si aucune valeur n'a été définie, alors elle renvoie nul.

Ce guide plongera dans l'instruction de cas dans MySQL.

L'instruction de cas dans MySQL

Si vous avez une expérience de programmation antérieure dans l'un des langages de programmation populaires, alors la déclaration de cas est définitivement un sujet familier. La structure est la suivante.

CAS
QUAND ENSUITE
QUAND ENSUITE
AUTRE
FIN

Allons une ventilation rapide de chacune des pièces.

  • : Les conditions nécessaires pour évaluer l'énoncé de cas.
  • : Le résultat de la correspondance de cas respective.
  • : Le résultat où aucun cas correspondant n'a été trouvé. Si ce n'est pas défini, le cas retourne le cas NUL.

Si vous regardez attentivement, la structure est presque exactement ce que vous trouverez dans une structure logique Java If-Else typique.

En utilisant l'instruction de cas

Utilisation de base
Pour démontrer l'application de cas, nous allons utiliser une base de données MySQL dédiée. Pour plus de facilité d'utilisation, j'utiliserai PhpMyAdmin pour accéder et gérer les bases de données. En savoir plus sur l'installation et la configuration de PhpMyAdmin et MySQL sur Ubuntu.

J'ai créé une base de données vide Bonjour le monde.

Notre exemple de base de données contiendra des informations sur les étudiants. Créer une nouvelle table nommée Étudiants.

$ Create Table Students (ID INT, Name Varchar (255), State Varchar (255), City Varchar (255));

Maintenant, insérez une entrée d'échantillon dans le tableau.

$ Insérer dans les étudiants (id, nom, état, ville) Valeurs («1», «Adrien», «Arizona», «Prescott»);
$ Insérer dans les étudiants (id, nom, état, ville) Valeurs («2», «Alisha», «Nebraska», «Omaha»);
$ Insérer dans les étudiants (id, nom, état, ville) Valeurs («3», «Brenda», «Michigan», «Detroit»);
$ Insérer dans les étudiants (id, nom, état, ville) Valeurs («4», «Thompson», «New York», »);
$ Insérer dans les étudiants (id, nom, état, ville) Valeurs («5», «David», »,« Portland »);

La table finale devrait ressembler à ceci.

Jetez un œil à la requête suivante et à sa sortie.

Sélectionnez le nom, l'état, la ville de l'ordre des étudiants par les étudiants par (
CAS
Quand l'état est nul alors City
Sinon État
FIN);

Utilisation de l'instruction de cas avec une fonction agrégée
Dans l'exemple suivant, nous créerons un nouveau tableau de base de données contenant des informations de vente. À partir de cette information, nous déterminerons le nombre de commandes par l'état de la commande. Pour ce faire, nous utiliserons également la fonction SUM () dans MySQL. Le guide suivant plonge profondément dans la fonction SUM () dans MySQL.

Créer une nouvelle table Ordres.

$ Créer des commandes de table (ORDAND_ID INT, Sales_ID INT, Status Varchar (255));

Repoussons la table avec quelques exemples de données.

$ Insérer dans les commandes (Order_id, Sales_id, Status) VALEUR («5», «10», «traitement»);
$ Insérer dans les commandes (Order_id, Sales_id, Status) VALEURS ('8', '244', 'Success');
$ Insérer dans les commandes (Order_id, Sales_id, Status) VALEUR («4», «274», «traitement»);
$ Insérer dans les commandes (Order_id, Sales_id, Status) VALEURS ('80', '452', 'Success');
$ Insérer dans les commandes (Order_id, Sales_id, Status) VALEUR («10», «10000», «traitement»);

Le code suivant comptera les instances de succès et traitement.

SÉLECTIONNER
Somme (cas
Quand status = 'succès' puis 1
D'autre 0
Fin) comme «comptage du succès»,
Somme (cas
Quand status = 'traitement' puis 1
D'autre 0
Fin) comme «traitement»,
Comte (*) comme «somme total»
Des ordres;

Comme le montre la sortie, il montre une somme de toutes les commandes en fonction de leur statut. Tout d'abord, les instructions de cas s'exécutent et renvoient 1 chaque fois qu'il est apparié avec l'état de commande respectif. Enfin, la fonction sum () calcule le nombre total de commandes.

Pensée finale

Dans ce guide, nous avons exploré l'utilisation de la déclaration de cas dans MySQL. En bref, c'est une instruction logique qui permet de réaliser une logique IF-Else aux requêtes SQL de manière efficace. Nous avons montré comment l'implémenter dans diverses situations. Comparé à l'utilisation de plusieurs instructions IF-Else, Case rend le code plus lisible et efficace.

MySQL est riche en fonctionnalités puissantes. Pour en savoir plus, consultez les guides suivants sur le schéma, la fonction DADIFF (), travaillant avec la sous-chaîne, etc.

Happy Computing!