Agrégation

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

Être capable de créer et exploiter une base de données MySQL au quotidien de manière autonome.

Cette formation a été conçue à destination d'un public sans connaissances préalables sur les bases de données, avec l'ambition de transmettre les notions fondamentales permettant d'entrer sereinement et efficacement dans l'univers des bases de données, et d'exploiter MySQL au quotidien de manière autonome.

Elle permet de tirer parti de logiciels de qualité conçus spécialement pour travailler avec les bases de données : MySQL Workbench et Datagrip.

Elle met l'accent sur la pratique, et comprend de nombreuses démonstrations, mises en situations, exercices corrigés et commentés.

Elle met à disposition en ressources téléchargeables 3 bases de données portant sur des thèmes variés (médicaments vétérinaires, sécurité routière, prénoms), les scripts SQL des démonstrations les plus longues, et intègre un code promotionnel vous permettant de bénéficier d'une prolongation à 4 mois de la période d'essai gratuite de Datagrip.

Voir plus
Dans cette vidéo, il est question des fonctions d'agrégation. Regardons la table Medoc. Dans cette table, on a une liste de médicaments avec pour chaque médicament le titulaire de l'AMM, c'est-à-dire le laboratoire qui est titulaire de l'autorisation de mise sur le marché du médicament. On aimerait, pour chaque titulaire, savoir combien d'AMM il a déposé. C'est avec des fonctions d'agrégation et en procédant à des regroupements qu'on va le faire. Je vous montre comment procéder. On va donc faire un SELECT FROM MEDOC. Déjà, on travaille sur la table médicaments et dans cette table, on veut dénombrer les enregistrements. Quand on fait un COUNT étoile, on dénombre les lignes. On peut faire un COUNT, par exemple, NON pour dénombrer les valeurs NON nulles présentes dans la colonne NON. Et on peut faire, par exemple, aussi un COUNT DISTINCT NON pour dénombrer les valeurs de NON distinctes. Ici, ce qui m'intéresse, c'est de dénombrer l'ensemble des enregistrements. Cependant, si j'exécute cette requête, je fais simplement que dénombrer les enregistrements qui sont dans ma table. Moi, je veux dénombrer les enregistrements et les regrouper par titulaire. Donc, il faut utiliser une clause supplémentaire GROUP BY et choisir le nom de la colonne selon laquelle on veut faire ce regroupement. Il faut également projeter cette colonne. Et lorsque j'exécute cette requête, j'ai un résultat avec deux colonnes, le nom du titulaire, et en face, une colonne qui comporte le nombre d'enregistrements dans la table MEDOC pour laquelle la valeur de titulaire est la valeur qui correspond. On va mettre un alias de colonne ici, à ce nombre, pour avoir un résultat un peu plus propre. Il existe, bien sûr, d'autres fonctions d'agrégation que COUNT. Je vais vous en montrer quelques-unes. Et pour ce faire, on va stocker le résultat de cette requête dans une CTE, comme on l'a déjà fait précédemment. Ça nous permettra de retravailler sur le résultat pour utiliser d'autres fonctions d'agrégation. On va commencer, par exemple, par la fonction MIN. Cette fonction, comme son nom l'indique, nous indique quelle est la valeur minimale. En l'occurrence, la valeur minimale présente dans la colonne NOMBRE de la table CTE. Cette fonction d'agrégation, comme la fonction COUNT, ignore les valeurs nulles. On peut aussi utiliser la fonction MAX, la fonction AVG, qui nous retourne la moyenne. Et puis, on a d'autres fonctions, comme par exemple STDDEV, qui nous retourne l'écart type. Ou encore la fonction VARIANCE, qui va nous retourner la variance. Si j'exécute ces deux requêtes, je vais avoir le résultat que j'attendais, avec dans la colonne 1 le minimum, ensuite le maximum, la moyenne, l'écart type et la variance. Une fonction d'agrégation qui est très utile également, c'est la fonction SUM, qui fonctionne de la même manière, qui ignore les valeurs nulles. Sauf que, contrairement à la fonction COUNT, qui dénombre les enregistrements, la fonction SUM additionne les valeurs. Je vous mets ici un lien vers la documentation officielle de MySQL, dans laquelle vous trouverez toutes les informations sur les fonctions d'agrégation disponibles. Vous voyez qu'il y en a plus que celles que j'ai montrées. Cependant, je vous ai montré les principales. Une dernière fonction d'agrégation que je vais vous montrer, c'est la fonction GROUP CONCAT. Elle peut être intéressante dans certains cas d'utilisation. Si l'on souhaite s'intéresser à la colonne NATURE de notre table Medoc, on voit que la nature d'un médicament peut être chimique, immunologique... Globalement, ça a l'air de tourner autour de deux valeurs, mais comme on a plus de 3000 enregistrements dans notre table, on ne va pas vérifier ligne par ligne les valeurs de ce champ. On va utiliser un par exemple. On peut faire un SELECT COUNT DISTINCT de NATURE FROM MEDOC. Ça va nous donner le nombre de valeurs distinctes qu'il y a dans cette colonne dans la table Medoc. A priori, on n'aurait que trois valeurs. On peut choisir de les afficher de deux manières différentes. Soit, comme on l'a déjà fait auparavant, SELECT DISTINCT NATURE FROM MEDOC, soit les afficher en ligne sous forme d'une chaîne de caractères dans laquelle chaque valeur est séparée de la suivante par une virgule. C'est là que la fonction GROUP CONCAT devient utile. Je peux faire un SELECT GROUP CONCAT DISTINCT NATURE FROM MEDOC. On a ici les différentes valeurs que la table comporte pour le champ NATURE présentées non pas sous forme de ligne d'enregistrement, mais sous forme d'une chaîne de caractères dans laquelle les valeurs sont séparées par des virgules. Ça peut être intéressant et utile, dans certains cas, d'avoir les données présentées sous cette forme. On a fait un tour d'horizon des principales fonctions d'agrégation. On va mettre rapidement en application ces connaissances dans un exercice. A tout de suite.

Programme détaillé

Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Unions 06:39
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
Je commande Je m'abonne
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
  • Nouveau
    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

éditeur de vidéos pédagogiques

Des supports pédagogiques en vidéo, produits avec les meilleurs experts. Dans nos studios à Paris, Lyon ou Montpellier. Vous souhaitez travailler avec nous ?
image-micro