[{"data":1,"prerenderedAt":45},["ShallowReactive",2],{"course-sql-avance":3,"highlight-sql-WITH ventes_mensuell":44},{"id":4,"name":5,"slug":6,"location":7,"targetAudienceFormatMarkdown":8,"prerequisitesFormatMarkdown":9,"objectivesFormatMarkdown":10,"descriptionFormatMarkdown":11,"teachingMethodsFormatMarkdown":12,"teachingResourcesFormatMarkdown":13,"evaluationMethodsFormatMarkdown":14,"accessibilityFormatMarkdown":15,"accessMethodsFormatMarkdown":16,"minimumParticipants":7,"maximumParticipants":7,"duration":17,"reference":18,"trainerType":7,"updated_at":19,"created_at":20,"price":21,"organizationMode":22,"theme":25,"code":29,"tags":34,"metadata":35},"/api/courses/0afbe9b5-b298-11f1-a993-d8ca06000363","SQL avancé","sql-avance",null,"Analystes de données, développeurs, administrateurs, concepteurs de rapports, ingénieurs décisionnels.","Maîtrise des requêtes SQL de base : jointures, agrégats, sous-requêtes.","Écrire des requêtes complexes et performantes : fonctions analytiques, CTE, optimisation.","--day1--\n\n## Expressions de table et requêtes structurées\n\n-   Expressions de table communes : lisibilité et factorisation\n-   Enchaînement de plusieurs expressions dans une même requête\n-   Requêtes récursives : hiérarchies, arborescences, cheminements\n-   Vues et vues matérialisées : différences et cas d'usage\n-   Décomposition d'une requête complexe en étapes vérifiables\n-   Travaux pratiques : réécriture de requêtes imbriquées en expressions de table et traitement d'une hiérarchie\n\n--break--\n\n## Fonctions analytiques\n\n-   Principe des fonctions de fenêtrage et différence avec les agrégats\n-   Partitionnement, ordre et cadre de fenêtre\n-   Classements, numérotations et déciles\n-   Décalages : valeur précédente, valeur suivante, écarts\n-   Cumuls, moyennes mobiles et totaux partiels\n-   Travaux pratiques : construction d'analyses de progression et de classements métier\n\n--day2--\n\n## Transformations et cas complexes\n\n-   Pivot et dépivotement des données\n-   Agrégations conditionnelles et tableaux croisés en SQL\n-   Regroupements avancés et totaux hiérarchiques\n-   Traitement des données temporelles : périodes, chevauchements, trous de séries\n-   Génération de séries et jointures sur intervalles\n-   Travaux pratiques : production d'un tableau croisé et d'une analyse de séries temporelles\n\n--break--\n\n## Performance des requêtes\n\n-   Lecture d'un plan d'exécution et opérateurs courants\n-   Index : types, sélectivité, index couvrants, coût de maintenance\n-   Causes fréquentes de non-utilisation d'un index\n-   Réécriture de requêtes coûteuses et alternatives équivalentes\n-   Statistiques, cardinalité et estimations erronées de l'optimiseur\n-   Travaux pratiques : optimisation de requêtes lentes avec mesure avant et après","Présentiel, distanciel, hybride","Les supports pédagogiques sont remis aux stagiaires sous format numérique et/ou papier selon les modalités de la formation.\n\nIls comprennent des supports de cours, des présentations, des fiches pratiques, des études de cas, des exercices applicatifs ainsi que des QCM d’entraînement selon la formation. (adapté au choix du formateur)\n\nLes formations s’appuient sur des moyens techniques adaptés : ordinateurs, logiciels professionnels, connexion internet, écran ou vidéoprojecteur, ainsi que des outils collaboratifs et de visioconférence pour les formations à distance.\n\nL’ensemble des supports pédagogiques est accessible pendant et après la formation afin de favoriser l’appropriation et la mise en pratique des compétences acquises.","En amont de la formation, un recueil des besoins permet de récolter des informations sur le stagiaire et ses attentes. L’évaluation se fait en cours de formation, par des études de cas ou des travaux pratiques. En fin de formation, par un questionnaire d’auto-évaluation et/ou un examen.\n\nUn suivi de qualité est effectué grâce à nos sessions en groupe restreint (entre 2 et 9 participants maximum). Le stagiaire émargera par demi-journée et recevra une attestation de formation.","Nous informons l’ensemble de nos clients et stagiaires que nous sommes dans la capacité d’adapter les sessions selon les handicaps et les situations spécifiques. Nous nous engageons à répondre à toutes vos demandes sous un délai de 48h ouvré.","Si l’une de nos formations vous intéresse, contactez-nous au +33 4 93 65 34 24 ou à l’adresse mail contact@m2g-intellect.fr. Selon votre besoin et vos attentes, nous organiserons un échange téléphonique avec le formateur pressenti afin d’adapter la formation et ses modules, puis nous vous adresserons un devis.\n\nLes dates de la formation seront à convenir sous 30 jours maximum.","14.00","L1-DAT-02","2026-09-18T09:45:10+00:00","2026-09-17T15:02:31+00:00","1430.00",{"id":23,"name":24},"/api/organization_mode_types/6","HYBRID",{"id":26,"name":27,"slug":28},"/api/themes/0ac0e95d-b298-11f1-a993-d8ca06000363","Bases de données, outils décisionnels, Big Data et Cloud computing","bases-de-donnees-outils-decisionnels-big-data-et-cloud-computing",{"id":30,"label":31,"domain":32},"/api/training_specialities/163","326 - Informatique, traitement de l’information, réseaux de transmission des données",{"label":33},"32 - Communication et information",[],{"desc-accroche":36,"Description":37,"icon-color":38,"icon-name":39,"code-langage":40,"code-snippet":41,"courte-description":42,"titre-accroche":43},"Approfondissez le SQL avancé : expressions de table communes (CTE) récursives, fonctions analytiques ROW_NUMBER, RANK et LAG/LEAD, tableaux croisés avec PIVOT et lecture du plan d'exécution pour fiabiliser vos requêtes.","Cette formation s'adresse à ceux qui maîtrisent déjà les jointures et agrégats de base et veulent écrire des requêtes SQL complexes sans dégrader les performances du serveur. Elle couvre les expressions de table communes (CTE), y compris récursives, les fonctions analytiques (ROW_NUMBER, RANK, LAG, LEAD) pour comparer des lignes sans sous-requête, ainsi que les opérations de pivot pour restituer les données en tableau croisé. Une large place est faite à la lecture du plan d'exécution : scans coûteux, jointures inefficaces, index manquants, car une requête juste peut immobiliser un serveur si elle est mal exécutée. Cette formation s'adresse aux analystes de données, développeurs, administrateurs, concepteurs de rapports et ingénieurs décisionnels.","#6D28D9","mdi:database-cog","sql","WITH ventes_mensuelles AS (\n  SELECT client_id, DATE_TRUNC('month', date_vente) AS mois, SUM(montant) AS total\n  FROM ventes\n  GROUP BY client_id, DATE_TRUNC('month', date_vente)\n)\nSELECT client_id, mois, total,\n       RANK() OVER (PARTITION BY mois ORDER BY total DESC) AS rang\nFROM ventes_mensuelles;","Formation SQL avancée pour maîtriser CTE, fonctions analytiques, pivots et lecture du plan d'exécution, afin d'écrire des requêtes complexes qui restent performantes en production.","Écrivez des requêtes SQL complexes et performantes grâce aux fonctions analytiques, aux CTE et à la lecture du plan d'exécution.","\u003Cpre class=\"hljs\">\u003Ccode class=\"language-sql\">\u003Cspan class=\"hljs-keyword\">WITH\u003C/span> ventes_mensuelles \u003Cspan class=\"hljs-keyword\">AS\u003C/span> (\n  \u003Cspan class=\"hljs-keyword\">SELECT\u003C/span> client_id, DATE_TRUNC(\u003Cspan class=\"hljs-string\">&#x27;month&#x27;\u003C/span>, date_vente) \u003Cspan class=\"hljs-keyword\">AS\u003C/span> mois, \u003Cspan class=\"hljs-built_in\">SUM\u003C/span>(montant) \u003Cspan class=\"hljs-keyword\">AS\u003C/span> total\n  \u003Cspan class=\"hljs-keyword\">FROM\u003C/span> ventes\n  \u003Cspan class=\"hljs-keyword\">GROUP\u003C/span> \u003Cspan class=\"hljs-keyword\">BY\u003C/span> client_id, DATE_TRUNC(\u003Cspan class=\"hljs-string\">&#x27;month&#x27;\u003C/span>, date_vente)\n)\n\u003Cspan class=\"hljs-keyword\">SELECT\u003C/span> client_id, mois, total,\n       \u003Cspan class=\"hljs-built_in\">RANK\u003C/span>() \u003Cspan class=\"hljs-keyword\">OVER\u003C/span> (\u003Cspan class=\"hljs-keyword\">PARTITION\u003C/span> \u003Cspan class=\"hljs-keyword\">BY\u003C/span> mois \u003Cspan class=\"hljs-keyword\">ORDER\u003C/span> \u003Cspan class=\"hljs-keyword\">BY\u003C/span> total \u003Cspan class=\"hljs-keyword\">DESC\u003C/span>) \u003Cspan class=\"hljs-keyword\">AS\u003C/span> rang\n\u003Cspan class=\"hljs-keyword\">FROM\u003C/span> ventes_mensuelles;\u003C/code>\u003C/pre>",1789717726587]