Utilisation de la clause HAVING en SQL

Clause having - exercice
Vidéo non disponible ! Réessayez plus tard
Cette vidéo fait partie de la formation
Apprendre MySQL 8.0 par la pratique
Revoir le teaser Je m'abonne
Transcription

Cette leçon fait partie de la formation
89,00€ Je commande

Formation incluse dans l'abonnement Elephorm Je m'abonne à Elephorm

DescriptionProgrammeAvis

Cette leçon fait partie de la formation
89,00€ Je commande

Formation incluse dans l'abonnement Elephorm Je m'abonne à Elephorm

Les objectifs de cette vidéo sont :

- Apprendre à utiliser la clause HAVING en SQL.

- Savoir effectuer des jointures entre plusieurs tables.

- Maîtriser l'utilisation des clauses GROUP BY et ORDER BY dans des requêtes SQL avancées.

Apprenez à utiliser la clause HAVING en SQL pour filtrer des médicaments immunologiques administrables par plus de deux voies.

Dans cette leçon, vous allez découvrir comment utiliser la clause HAVING en SQL pour effectuer des filtres avancés après des opérations de groupement. Nous allons examiner un exemple pratique : trouver les médicaments de nature immunologique qui sont administrables par plus de deux voies d'administration. La démarche inclut :

- La jointure entre les tables VOIE, MEDOC et MEDOC_VOIE.

- La projection des colonnes nécessaires en utilisant les alias appropriés.

- L'ajout de la clause GROUP BY pour regrouper les résultats par le nom des médicaments.

- L’application de la condition sur la nature des médicaments avant le groupement.

- L’utilisation de la clause HAVING pour filtrer les groupes ayant une certaine condition de comptage.

- L’ajout d'un tri avec ORDER BY pour organiser les résultats par le nombre de voies d'administration.

À travers cet exercice, vous allez également voir comment contrôler et vérifier l'exactitude des résultats obtenus. Cette méthode est essentielle pour effectuer des analyses de données complexes dans différents contextes professionnels.

Voir plus
Questions réponses
Pourquoi utilise-t-on la clause HAVING en SQL ?
On utilise la clause HAVING pour filtrer les enregistrements après un groupement de données avec GROUP BY, selon des conditions spécifiques appliquées sur des fonctions d'agrégation (comme COUNT, SUM, etc.).
Quelle est la différence entre WHERE et HAVING ?
La clause WHERE est utilisée pour filtrer les enregistrements avant un groupement, tandis que la clause HAVING est appliquée après le groupement pour filtrer les résultats des fonctions d'agrégation.
Quels sont les éléments principaux d'une jointure multi-table en SQL ?
Les éléments essentiels d'une jointure multi-table sont : choisir les tables à joindre, définir les conditions de jointure sur les colonnes correspondantes, et spécifier le type de jointure (INNER JOIN, LEFT JOIN, etc.).
Je vous propose un exercice de mise en application de l'usage de la clause HAVING et pour ce faire je vais vous demander de me trouver les médicaments qui sont de nature immunologique et qui sont utilisables par plus de deux voies d'administration. Je vous laisse réfléchir à la solution, prenez votre temps, mettez la vidéo en pause et je vous donne comme d'habitude la réponse, en tout cas la mienne, dans quelques secondes. A tout de suite ! Alors j'espère que ça n'a pas été trop difficile et que vous avez trouvé la solution, je vous montre comment est-ce que je procède. Les tables impliquées dans cette requête sont bien sûr la table VOIE, la table MEDOC et la table qui établit la correspondance entre les deux, donc la table MEDOC VOIE. Il va falloir pour commencer que l'on fasse une jointure. Donc ensuite il faut que je définisse quelles sont les colonnes que je souhaite projeter, donc M.NOM as MEDOC par exemple et un compte de V.NOM as Nombre de Voix. Il faut que je rajoute un groupby, on va retourner la ligne, groupby M.NOM. Voilà donc si j'exécute cette requête et donc j'ai la liste des médicaments ainsi que le nombre de voies par lesquelles chaque médicament est utilisable. Ce que je veux c'est les médicaments dont la nature est immunologique, donc je commence par faire une restriction ici avant le groupby M.Nature égale immunologique. Donc j'ai effectivement les enregistrements que je souhaite avoir et ensuite j'applique la clause having pour ne conserver que les seuls médicaments immunologiques qui sont utilisables par plus de deux voies. On rajoute le having ici après le groupby COUNT de V.NOM strictement supérieur à 2 ou supérieur à égal selon que vous souhaitez contenir ou pas le 2. Mettons qu'on le conserve, j'exécute cette requête et donc je vois que j'ai un certain nombre de médicaments immunologiques qui sont utilisables par un nombre de voies indiqué. Je peux m'assurer que le nombre de voies est bien le bon, peut-être en rajoutant un ORDER BY. COUNT de V.NOM ASC par exemple. Si j'exécute cette requête, on voit que c'est trié par ordre de nombre de voies croissants, la plupart étant utilisables pour deux voies. On voit qu'il y a des médicaments immunologiques qui sont utilisables par trois voies et qu'il y a trois médicaments qui sont administrables par quatre voies d'administration. Voilà comment il fallait procéder pour répondre à la question posée.

Programme détaillé

Nos dernières formations Code & Data
  • Nouveau
    Maîtriser FlutterFlow - De l'Idée à l'Application
    Découvrir
    Cette formation en FlutterFlow est l'outil idéal pour tout développeur souhaitant créer des applications mobiles robustes et interactives sans coder de manière complexe. Grâce à des modules complets et structurés, vous apprendrez à utiliser FlutterFlow et Firebase, à sécuriser vos données, à concevoir des interfaces utilisateur élégantes et à intégrer des API telles qu'OpenIA. Rejoignez-nous pour transformer vos idées en applications innovantes et performantes.
    4h08 57 leçons
  • Webflow - Créer la landing Page d'OpenAI
    Découvrir
    À l'issue de cette formation, les participants seront capables de créer de manière autonome une landing page sophistiquée, similaire à celle d'OpenAI, en utilisant les fonctionnalités avancées de Webflow pour le design responsive et les interactions.
    3h48 19 leçons
  • Apprendre Svelte 3 et SvelteKit 1.0
    Découvrir
    Créez des applications web modernes et ultra-rapides avec notre formation "Apprendre Svelte 3 et SvelteKit 1.0". Rejoignez-nous et devenez un expert du développement JavaScript ! 🚀 #Svelte #SvelteKit #DéveloppementWeb
    7h42 77 leçons
  • Apprendre Vue JS 3
    Découvrir
    Apprenez à créer des applications web modernes avec notre formation "Apprendre Vue JS 3". Rejoignez-nous et maîtrisez ce puissant framework JavaScript ! 🚀 #VueJS #FormationWeb #Développement
    11h47 91 leçons
  • Gratuit
    Apprendre ChatGPT
    Découvrir
    Ce cours vise à fournir une compréhension approfondie de l'intelligence artificielle, en se concentrant sur l'utilisation pratique de ChatGPT et DALL-E. Les participants découvriront comment l'IA peut transformer des domaines variés tels que le marketing, le développement web, et le design graphique. Le contenu couvre les bases de l'IA, l'art de créer des prompts efficaces, l'utilisation de plugins avancés, et le codage assisté par IA. Des projets pratiques permettront d'appliquer ces connaissances dans des scénarios réels. Destiné aux professionnels de la technologie, aux marketeurs, aux développeurs, et à toute personne intéressée par l'IA, ce cours est une opportunité d'acquérir des compétences innovantes et applicables dans divers contextes professionnels et créatifs. Les prérequis incluent une compréhension basique de l'informatique et un intérêt pour l'IA. Le cours promet une aventure d'apprentissage enrichissante, ouvrant de nouvelles perspectives dans l'utilisation de l'intelligence artificielle.
    3h12 30 leçons