Maîtrisez les concepts fondamentaux du langage SQL, ainsi que les techniques avancées pour interroger, gérer et analyser des bases de données.
Pour qui ?
Toute personne souhaitant maîtriser SQL
La formation et son contenu sont personnalisables pour s’adapter à tous les niveaux.
Toute personne souhaitant maîtriser SQL
La formation et son contenu sont personnalisables pour s’adapter à tous les niveaux.
Prérequis
- Ordinateur/Téléphone
- Mobile/Tablette
- Réseau Internet
- Avoir un accès au logiciel SQL
- Ordinateur/Téléphone
- Mobile/Tablette
- Réseau Internet
- Avoir un accès au logiciel SQL
Objectifs
- Concepts et fonctionnement des SGBDR
- L’environnement de travail pour le SQL
- Savoir écrire des requêtes SQL
- Manipulation des données de la base
- Les fonctions en SQL
- Requêtes ensemblistes en SQL
- Requêtes complexes en SQL
- Le SQL dans les applications et les outils
- Expressions régulières et SQL
- Requêtes hiérarchiques
- Utiliser les opérateurs ensemblistes en SQL
- Compléments sur le regroupement de données
- Fonctionnalités SQL avancées en consultation
- Fonctionnalités SQL avancées en manipulation de données
- Gestion des structures de stockage
- Concepts et fonctionnement des SGBDR
- L’environnement de travail pour le SQL
- Savoir écrire des requêtes SQL
- Manipulation des données de la base
- Les fonctions en SQL
- Requêtes ensemblistes en SQL
- Requêtes complexes en SQL
- Le SQL dans les applications et les outils
- Expressions régulières et SQL
- Requêtes hiérarchiques
- Utiliser les opérateurs ensemblistes en SQL
- Compléments sur le regroupement de données
- Fonctionnalités SQL avancées en consultation
- Fonctionnalités SQL avancées en manipulation de données
- Gestion des structures de stockage
Programme
Concepts et fonctionnement des SGBDR
- Différences entre données structurées et non structurés
- Besoin d’un formalisme conceptuel pour représenter les données (Modèle Conceptuel des Données, MCD)
- Liens entre algèbre relationnelle, MCD, SGBDR
- Passage au format logique des données dans une base relationnelle (table, colonne, ligne)
- Liens entre les données et contraintes d’intégrité (clefs primaire et étrangères)
- Problématiques liées à l’implémentation physique des données
- Les solutions proposées par les SGBDR
- Un petit mot sur les bases NoSQL par rapport à un SGBDR
- Aperçu des possibilités du langage SQL (select, insert, update, delete)
- Standardisation du SQL par l’ANSI
- Les dialectes
- Utilisateurs et droits (GRANT, REVOKE)
- Notions de transactions (ACID)
- Accès concurrents et verrous (commit, rollback)
- L’objet de base dans un SGBDR : la table
- Pourquoi doit-on typer les données d’une table (varchar, number, date…) ?
- Notion de schéma par utilisateur
Les IDE (Environnement de Développement Intégré) du marché
- Les grands éditeurs du marché (Oracle, DB2, SQL Server, PostgreSQL, MySQL, etc.)
- Fonctionnalités des IDE pour un développeur SQL
- Oracle et SQL Developer
- SQL Server et DBA Management Studio
- MySQL et SQL Workbench ou phpMyAdmin
- PostgreSQL et DBeaver
- Autres outils (DbVisualizer, Devart…)
- Paramétrer sa session de travail (formats d’affichage)
Import/Export de données
- Savoir exporter les données de sa base dans un fichier texte
- Savoir importer les données d’un fichier texte, CSV, XML dans la base
- Découvrir comment présenter les résultats des requêtes SQL dans un fichier Excel
Les requêtes SQL de base
- Bien comprendre le schéma relationnel sous-jacent
- Vue générale d’une requête SQL (select, from, where)
- Exemple de requête d’extraction simple sur une seule table
- Les clauses de filtrage (where)
- Trier les résultats (ORDER BY)
- Conditions et opérateurs de comparaison
- Les mots clefs IN, BETWENN, LIKE, IS NULL
Récupérer les données de plusieurs tables
- Comprendre le produit cartésien pour comprendre la jointure
- Récupération de données à partir de plusieurs tables :
- Les jointures internes (INNER JOIN)
- Les corrélations
- Les jointures Himself
- Présentation des jointures externes (OUTER JOIN)
Synthèse
- Comment appréhender l’écriture d’une requête SQL ?
- Par quoi commencer (select ? from ? where ?)
- Modélisation des jointures pour clarifier une requête (arbre)
La genèse des données
- Création de tables en SQL
- Les types de données
- Modification du schéma d’une table (alter table)
- La suppression d’une table (drop table)
- Manipulations de séquences
La mise à jour des données
- L’insertion de données (insert)
- La mise à jour (update)
- La suppression d’informations (delete)
- Ne pas confondre NULL, 0, et chaîne vide (˜˜)
Les classiques
- Présentation des grandes familles de fonctions SQL
- Où peut-on utiliser les fonctions SQL dans une requête ?
- Moyenne des valeurs (avg)
- Nombre d’enregistrements retournés (count)
- Minimum et maximum (min, max)
- Somme des valeurs (sum)
Les fonctions sur les chaînes de caractères
- La longueur d’une chaîne (length)
- Les minuscules et majuscules (lower, upper)
- L’opérateur LIKE et le symbole %
- Extraction d’une partie de la chaîne (substr)
- Gérer les valeurs null (Coalesce, IsNull)
Les fonctions temporelles
- Savoir manipuler une date (current_date)
- Les variantes (premier jour du mois, dernier jour, etc.)
- L’heure courante (current_time)
- Retourner la date et l’heure (current_timestamp)
Les conversions date/nombre/chaîne
- Bien comprendre les formats visibles (AAA-MM-JJ HH :MM :SS, etc.)
- Les pièges classiques avec les dates
- Conversion d’une date en caractères
- Conversion d’une chaîne de caractères en date
Portabilité des fonctions SQL d’un SGBD à un autre
- Exemples de fonctions spécifiques à SQL Server, MySQL, Oracle, etc.
- Les sites des références pour s’assurer de la portabilité de nos requêtes SQL
Requêtes ensemblistes en SQL
- Regroupement et condition (group by, having)
- Le cumul de résultats (union)
- Le recoupement de résultats (intersect, minus)
Requêtes complexes en SQL
- Bien comprendre les sous-interrogations dans le where
- Bien comprendre les sous-requêtes synchronisées (where exists)
- Variantes sur la jointure (auto jointure, jointure complexe)
- Retour sur l’arbre de requêtes SQL pour les requêtes complexes
- Principes des vues (view)
- Quand utiliser les vues ?
- Notion de performances des requêtes
- Principes d’un index
Le SQL dans les applications et les outils
- Utilisation du SQL dans les applications ou sites Web
- Limites du SQL « seul » et apports des procédures stockées
- Liens entre Business Intelligence (BI) et SQL
- SQL et les outils d’aide à la décision (Power BI, Tableau, Webi)
- Création et stockage de requêtes SQL dans les ETL (Extract-Transform Load)
- Import/Export de données au format SQL
Expressions régulières et SQL
- Limites de l’opérateur LIKE
- Philosophie des expressions régulières
- Etendre 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
Requêtes hiérarchiques
- Définition du lien entre les noeuds de l’arbre : CONNECT BY
- Début du parcours de l’arbre : START WITH
- Niveau du noeud dans l’arbre : LEVEL
- Elimination de lignes ou de branches
- Fonctions propres aux requêtes hiérachiques
Utiliser les opérateurs ensemblistes en SQL
- 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 avec la fonction GROUP_ID
Fonctionnalités SQL avancées en consultation
- Sous-requête avec WITH
- Numérotation des lignes par RANK, DENSE_RANK et ROW_NUMBER avec ou sans partitionnement
- Passer de lignes en colonnes et inversement avec PIVOT et UNPIVOT
- Utilisation de fonctions analytiques (LAG, LEAD, …)
Fonctionnalités SQL avancées en manipulation de données
- Insertion multitables 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
Gestion des structures de stockage
- Espace de stockage à travers les tablespaces
- Tablespaces par défaut et accessibles
- Quotas sur tablespaces
- Désignation de tablespaces pour les structutres tables et index
- Désignation de tablespaces au niveau des contraintes d’unicité et d’identifiant
- Objets avancés : Tables externes, Database Link, Vues matérialisées
Pour faciliter l’acquisition de la compétence et sa transférabilité sur le poste de travail, trois différents contenus sont mis à disposition de l’apprenant sur son espace dédié, en complément de sa formation :
Un parcours e-learning : Réalisé avant ou après une session avec un formateur, chaque module correspond à une fonctionnalité à maîtriser du programme. L’ensemble des modules constitue un parcours qui renforce l’ancrage.
Des tutoriels de courte durée : Selon la logique du support formatif, ces vidéos aident l’apprenant confronté à une difficulté à la résoudre en toute autonomie 24/7 mais aussi à acquérir la fonctionnalité ou l’usage concerné.
Des vidéos d’exercices : En reprenant pas à pas chaque étape de la correction, l’apprenant progresse à travers une illustration pratique de la mise en œuvre de la fonctionnalité ou de l’usage.
Ces contenus e-formation sont disponibles dans l’espace dédié de l’apprenant. Ils complètent efficacement les sessions synchrones avec un formateur.
Concepts et fonctionnement des SGBDR
- Différences entre données structurées et non structurés
- Besoin d’un formalisme conceptuel pour représenter les données (Modèle Conceptuel des Données, MCD)
- Liens entre algèbre relationnelle, MCD, SGBDR
- Passage au format logique des données dans une base relationnelle (table, colonne, ligne)
- Liens entre les données et contraintes d’intégrité (clefs primaire et étrangères)
- Problématiques liées à l’implémentation physique des données
- Les solutions proposées par les SGBDR
- Un petit mot sur les bases NoSQL par rapport à un SGBDR
- Aperçu des possibilités du langage SQL (select, insert, update, delete)
- Standardisation du SQL par l’ANSI
- Les dialectes
- Utilisateurs et droits (GRANT, REVOKE)
- Notions de transactions (ACID)
- Accès concurrents et verrous (commit, rollback)
- L’objet de base dans un SGBDR : la table
- Pourquoi doit-on typer les données d’une table (varchar, number, date…) ?
- Notion de schéma par utilisateur
Les IDE (Environnement de Développement Intégré) du marché
- Les grands éditeurs du marché (Oracle, DB2, SQL Server, PostgreSQL, MySQL, etc.)
- Fonctionnalités des IDE pour un développeur SQL
- Oracle et SQL Developer
- SQL Server et DBA Management Studio
- MySQL et SQL Workbench ou phpMyAdmin
- PostgreSQL et DBeaver
- Autres outils (DbVisualizer, Devart…)
- Paramétrer sa session de travail (formats d’affichage)
Import/Export de données
- Savoir exporter les données de sa base dans un fichier texte
- Savoir importer les données d’un fichier texte, CSV, XML dans la base
- Découvrir comment présenter les résultats des requêtes SQL dans un fichier Excel
Les requêtes SQL de base
- Bien comprendre le schéma relationnel sous-jacent
- Vue générale d’une requête SQL (select, from, where)
- Exemple de requête d’extraction simple sur une seule table
- Les clauses de filtrage (where)
- Trier les résultats (ORDER BY)
- Conditions et opérateurs de comparaison
- Les mots clefs IN, BETWENN, LIKE, IS NULL
Récupérer les données de plusieurs tables
- Comprendre le produit cartésien pour comprendre la jointure
- Récupération de données à partir de plusieurs tables :
- Les jointures internes (INNER JOIN)
- Les corrélations
- Les jointures Himself
- Présentation des jointures externes (OUTER JOIN)
Synthèse
- Comment appréhender l’écriture d’une requête SQL ?
- Par quoi commencer (select ? from ? where ?)
- Modélisation des jointures pour clarifier une requête (arbre)
La genèse des données
- Création de tables en SQL
- Les types de données
- Modification du schéma d’une table (alter table)
- La suppression d’une table (drop table)
- Manipulations de séquences
La mise à jour des données
- L’insertion de données (insert)
- La mise à jour (update)
- La suppression d’informations (delete)
- Ne pas confondre NULL, 0, et chaîne vide (˜˜)
Les classiques
- Présentation des grandes familles de fonctions SQL
- Où peut-on utiliser les fonctions SQL dans une requête ?
- Moyenne des valeurs (avg)
- Nombre d’enregistrements retournés (count)
- Minimum et maximum (min, max)
- Somme des valeurs (sum)
Les fonctions sur les chaînes de caractères
- La longueur d’une chaîne (length)
- Les minuscules et majuscules (lower, upper)
- L’opérateur LIKE et le symbole %
- Extraction d’une partie de la chaîne (substr)
- Gérer les valeurs null (Coalesce, IsNull)
Les fonctions temporelles
- Savoir manipuler une date (current_date)
- Les variantes (premier jour du mois, dernier jour, etc.)
- L’heure courante (current_time)
- Retourner la date et l’heure (current_timestamp)
Les conversions date/nombre/chaîne
- Bien comprendre les formats visibles (AAA-MM-JJ HH :MM :SS, etc.)
- Les pièges classiques avec les dates
- Conversion d’une date en caractères
- Conversion d’une chaîne de caractères en date
Portabilité des fonctions SQL d’un SGBD à un autre
- Exemples de fonctions spécifiques à SQL Server, MySQL, Oracle, etc.
- Les sites des références pour s’assurer de la portabilité de nos requêtes SQL
Requêtes ensemblistes en SQL
- Regroupement et condition (group by, having)
- Le cumul de résultats (union)
- Le recoupement de résultats (intersect, minus)
Requêtes complexes en SQL
- Bien comprendre les sous-interrogations dans le where
- Bien comprendre les sous-requêtes synchronisées (where exists)
- Variantes sur la jointure (auto jointure, jointure complexe)
- Retour sur l’arbre de requêtes SQL pour les requêtes complexes
- Principes des vues (view)
- Quand utiliser les vues ?
- Notion de performances des requêtes
- Principes d’un index
Le SQL dans les applications et les outils
- Utilisation du SQL dans les applications ou sites Web
- Limites du SQL « seul » et apports des procédures stockées
- Liens entre Business Intelligence (BI) et SQL
- SQL et les outils d’aide à la décision (Power BI, Tableau, Webi)
- Création et stockage de requêtes SQL dans les ETL (Extract-Transform Load)
- Import/Export de données au format SQL
Expressions régulières et SQL
- Limites de l’opérateur LIKE
- Philosophie des expressions régulières
- Etendre 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
Requêtes hiérarchiques
- Définition du lien entre les noeuds de l’arbre : CONNECT BY
- Début du parcours de l’arbre : START WITH
- Niveau du noeud dans l’arbre : LEVEL
- Elimination de lignes ou de branches
- Fonctions propres aux requêtes hiérachiques
Utiliser les opérateurs ensemblistes en SQL
- 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 avec la fonction GROUP_ID
Fonctionnalités SQL avancées en consultation
- Sous-requête avec WITH
- Numérotation des lignes par RANK, DENSE_RANK et ROW_NUMBER avec ou sans partitionnement
- Passer de lignes en colonnes et inversement avec PIVOT et UNPIVOT
- Utilisation de fonctions analytiques (LAG, LEAD, …)
Fonctionnalités SQL avancées en manipulation de données
- Insertion multitables 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
Gestion des structures de stockage
- Espace de stockage à travers les tablespaces
- Tablespaces par défaut et accessibles
- Quotas sur tablespaces
- Désignation de tablespaces pour les structutres tables et index
- Désignation de tablespaces au niveau des contraintes d’unicité et d’identifiant
- Objets avancés : Tables externes, Database Link, Vues matérialisées
Pour faciliter l’acquisition de la compétence et sa transférabilité sur le poste de travail, trois différents contenus sont mis à disposition de l’apprenant sur son espace dédié, en complément de sa formation :
Un parcours e-learning : Réalisé avant ou après une session avec un formateur, chaque module correspond à une fonctionnalité à maîtriser du programme. L’ensemble des modules constitue un parcours qui renforce l’ancrage.
Des tutoriels de courte durée : Selon la logique du support formatif, ces vidéos aident l’apprenant confronté à une difficulté à la résoudre en toute autonomie 24/7 mais aussi à acquérir la fonctionnalité ou l’usage concerné.
Des vidéos d’exercices : En reprenant pas à pas chaque étape de la correction, l’apprenant progresse à travers une illustration pratique de la mise en œuvre de la fonctionnalité ou de l’usage.
Ces contenus e-formation sont disponibles dans l’espace dédié de l’apprenant. Ils complètent efficacement les sessions synchrones avec un formateur.
Les points forts
- Une formation humanisée à 100% pour progresser plus rapidement
- Une pédagogie actionnelle avec des experts sélectionnés en fonction de vos besoins
- Votre coach personnel vous accompagne avant et pendant la formation
- Une formation humanisée à 100% pour progresser plus rapidement
- Une pédagogie actionnelle avec des experts sélectionnés en fonction de vos besoins
- Votre coach personnel vous accompagne avant et pendant la formation
Les formateurs
Nos formateurs sont des experts, animateurs et facilitateurs certifiés capables de contextualiser la formation selon le métier de l’apprenant (Finance, Commerce, RH, Marketing…). Leur capacité à s’adapter au profil et au niveau de l’apprenant contribue à donner confiance et facilite l’atteinte des objectifs pédagogiques.
La pédagogie actionnelle en situation de travail, signature pédagogique de MyConnecting, peut être complétée ou adaptée par d’autres pédagogies (inversée, spirale…) selon les dispositifs.
La réussite de l’apprenant est leur réussite !
Nos formateurs sont des experts, animateurs et facilitateurs certifiés capables de contextualiser la formation selon le métier de l’apprenant (Finance, Commerce, RH, Marketing…). Leur capacité à s’adapter au profil et au niveau de l’apprenant contribue à donner confiance et facilite l’atteinte des objectifs pédagogiques.
La pédagogie actionnelle en situation de travail, signature pédagogique de MyConnecting, peut être complétée ou adaptée par d’autres pédagogies (inversée, spirale…) selon les dispositifs.
La réussite de l’apprenant est leur réussite !
L'ESSENTIEL
Modalités



Financement
Accessibilité
Toutes nos formations sont accessibles aux personnes à mobilité réduite. Outre l’accessibilité physique de l’ensemble de nos locaux, la mise en place d’adaptations matérielles spécifiques est prévue pour les personnes : malvoyantes, malentendantes, ou souffrant de troubles d’apprentissage du DYS.
Un accompagnement adapté lors du passage des certifications est également prévu.
Délai de lancement
Le lancement de nos formations s’effectue au plus tard dans les 72 h suivant la validation du dossier.
Modalités d'évaluation
- En début de formation, une évaluation de positionnement initiale, à l’oral et / ou l’écrit.
- Durant la formation, une évaluation continue de la progression.
- En fin de formation, une évaluation finale pour attester des progrès réalisés.
Accessibilité
Toutes nos formations sont accessibles aux personnes à mobilité réduite. Outre l’accessibilité physique de l’ensemble de nos locaux, la mise en place d’adaptations matérielles spécifiques est prévue pour les personnes : malvoyantes, malentendantes, ou souffrant de troubles d’apprentissage du DYS.
Un accompagnement adapté lors du passage des certifications est également prévu.
Délai de lancement
Le lancement de nos formations s’effectue au plus tard dans les 72 h suivant la validation du dossier.
Modalités d'évaluation
- En début de formation, une évaluation de positionnement initiale, à l’oral et / ou l’écrit.
- Durant la formation, une évaluation continue de la progression.
- En fin de formation, une évaluation finale pour attester des progrès réalisés.