Qualiopi

PostgreSQL Avancé : Performance, PL/pgSQL & SQL Complexe

Maîtrisez les requêtes complexes (CTE, Window Functions), le langage procédural PL/pgSQL, l'optimisation par index et le format JSON.

3 jours
2 100 € HT
PostgreSQL Avancé
PL/pgSQL
JSONB

Intéressé par cette formation ?

Contactez-nous pour planifier une session.

Demander un devis

Objectifs pédagogiques

  • Écrire des requêtes SQL analytiques complexes (Window Functions, CTE).
  • Développer une logique métier directement en base (Procédures stockées, Triggers).
  • Optimiser les performances des requêtes (Lecture de plan d'exécution, Indexation).
  • Manipuler des données semi-structurées (JSON) comme dans une base NoSQL.

Programme

Jour 1 : SQL Avancé et Analytique

  • Jointures Complexes : Maîtriser INNER, LEFT/RIGHT, FULL et CROSS JOIN pour croiser les données.
  • Opérations Ensemblistes : UNION, INTERSECT et EXCEPT pour manipuler des jeux de résultats.
  • Sous-requêtes & CTE : Rendre le code lisible et performant avec les Common Table Expressions (WITH) et les sous-requêtes corrélées.
  • Fonctions de Fenêtrage : Analyse de données avancée avec OVER, PARTITION BY, RANK, LEAD et LAG.

Jour 2 : Programmabilité (Server-Side)

  • Vues : Vues simples vs Vues Matérialisées pour la performance.
  • PL/pgSQL : Création de Procédures Stockées et Fonctions. Gestion des variables, boucles (LOOP, WHILE) et conditions (IF/ELSE).
  • Triggers : Automatiser des actions sur événements (BEFORE/AFTER insert/update).
  • Gestion des erreurs : Blocs BEGIN...EXCEPTION et transactions dans les procédures.

Jour 3 : Performance et Modernité

  • Indexation : Comprendre et choisir les index : B-Tree (standard), Hash, GiST et GIN (pour le complexe).
  • Optimisation : Lire un plan d'exécution avec EXPLAIN et ANALYZE pour détecter les goulots d'étranglement.
  • PostgreSQL NoSQL : Stocker et requêter des documents JSON avec le type JSONB et les index associés.

Prérequis

Bonne connaissance du SQL de base (SELECT, WHERE, GROUP BY). Avoir suivi le module "Fondamentaux" ou avoir une expérience équivalente.

Public cible

Développeurs Backend confirmés, Lead Devs, DBA (Database Administrators) et Data Engineers.

Prêt à vous former ?

Contactez-nous pour obtenir un devis personnalisé.