Formation SQL Perfectionnement
2 JoursDescription de la formation SQL Perfectionnement
Le succès du SQL (Structured Query Language) provient principalement de sa simplicité et de sa syntaxe presque géométrique autour de données structurées en lignes et en colonnes. La structure de programmation « select …from … where … » devient cependant moins intuitive à utiliser dès lors que les requêtes deviennent plus complexes avec plusieurs tables et des conditions qui se cumulent.
Cette formation SQL Perfectionnement vous apprendra à lire et écrire des requêtes SQL complexes en disposant d’une méthodologie solide et étayée.
Objectifs
Objectifs pédagogiques :
- Maîtriser les jointures et leurs variantes
- Maîtriser les requêtes ensemblistes
- Écrire des requêtes SQL complexes (jointures externes, select imbriqués corrélés, etc.)
- Savoir modéliser une requête complexe à l’aide d’un arbre
- Transcrire cet arbre en requête SQL
À qui s’adresse cette formation ?
Public :
Ce cours SQL Perfectionnement cible principalement les utilisateurs finaux, utilisateurs BI , développeurs, administrateurs, chefs de projet, et plus généralement toute personne ayant une première expérience du langage SQL mais ne s’estimant pas totalement à l’aise ni autonome pour écrire des requêtes SQL plus ou moins complexes.
Prérequis :
Pour suivre cette formation SQL Perfectionnement, il est important de bien connaître les fondamentaux du SQL (select … from … where, group by, jointure simple, etc.) et les concepts fondamentaux des bases de données relationnelles (table, lignes, colonnes, clef primaire, clef étrangère).
Contenu du cours SQL Perfectionnement
Maîtriser les jointures
Rappels sur les liens entre les données dans un SGBDR
La jointure « classique » (INNER JOIN)
Différence avec la jointure « naturelle » (NATURAL JOIN)
Jointure avec « beaucoup » de tables
La jointure croisée ou produit cartésien (CROSS JOIN)
Quand a-t-on besoin de faire une jointure externe (RIGHT/LEFT JOIN) ?
Condition vraie dans au moins une des tables (FULL JOIN)
Exemples d’auto jointure (SELF JOIN)
Expressions régulières et SQL
Limites de l’opérateur LIKE
Philosophie des expressions régulières
Étendre les méta-caractères (^,. ,*,[, …)
Syntaxe générale des fonctions
Fonction : regexp_like.
Fonction : regexp_substr.
Fonction : regexp_instr.
Fonction : regexp_replace.
Fonction : regexp_count.
Opérateurs ensemblistes
Règles à respecter pour assembler des requêtes :
– Nombre d’expressions projetées
– Types des expressions projetées
Les opérateurs UNION, UNION ALL, INTERSECT et MINUS
Trier les informations
Compléments sur le regroupement de données
Rappels sur GROUP BY et HAVING
Constitution de sous-groupes avec ROLLUP et CUBE
Application partielle et totale ROLLUP et CUBE
Identification de lignes générées par ROLLUP et CUBE avec les fonctions GROUPING et GROUPING_ID
Gestion des NULLs
Identification de groupes dupliqués
Tableaux croisés avec PIVOT et UNPIVOT
Manipulation avancée en SQL
Insertion multi tables inconditionnelles, inconditionnelles avec “rotation”, conditionnelles, conditionnelles exclusives.
Insertion ou modification avec la commande MERGE
Utilisation de sous-requêtes corrélées ou interrogation sur tuples
Manipulation et consultation avec la clause RETURNING.
Aide à l’écriture de requêtes SQL complexes
Principes d’un arbre de requête (algébrique)
Vocabulaire (projection, restriction, …)
Formalisme associé
Exemples de requêtes complexes modélisées progressivement par un arbre
Passage au SQL correspondant
Travaux Pratiques
Les travaux pratiques représentent 80% du temps de formation.