Croiser plusieurs sources de données : réaliser des jointures (internes, externes, auto-jointures), utiliser les opérateurs ensemblistes et écrire des sous-requêtes simples, corrélées ou imbriquées.
Créer et gérer des objets de base de données : tables, contraintes d'intégrité, vues, séquences, index et synonymes.
Modifier les données en sécurité : utiliser INSERT, UPDATE, DELETE et MERGE, et contrôler les transactions avec COMMIT, ROLLBACK et SAVEPOINT.
Croiser plusieurs sources de données : réaliser des jointures (internes, externes, auto-jointures), utiliser les opérateurs ensemblistes et écrire des sous-requêtes simples, corrélées ou imbriquées.
Utiliser les fonctions SQL : manipuler les chaînes, les nombres et les dates, convertir les types, gérer les valeurs nulles et calculer des statistiques (somme, moyenne, minimum, maximum, comptage).
Interroger une base Oracle : écrire des requêtes SELECT pour extraire, filtrer, trier et regrouper des données.
Comprendre les bases de données relationnelles : les concepts du modèle relationnel, le modèle entité-association et le rôle du langage SQL.
Prérequis
Comprendre en gros ce qu'est une base de données (tables, lignes, colonnes). Ce n'est pas indispensable, car la séance 1 reprend les concepts relationnels.
Une logique de base (conditions, comparaisons) et un peu d'anglais technique, car l'examen et les mots-clés SQL sont en anglais
Un poste avec Oracle Database 19c/23c (ou une VM/Docker) et SQL Developer ou SQL*Plus, avec le schéma de démonstration HR (le plan l'utilise pour les ateliers)
Contenu de la Formation
Total:
31 Chapitres
Total hours:
24
Concepts de base de données relationnelle et modèle E-R.
Présentation du langage SQL et de ses normes.
Connexion à Oracle (SQL Developer, SQL*Plus).
Structure de la commande SELECT de base.
Utilisation de la clause WHERE pour le filtrage.
Opérateurs de comparaison (=, >, <, BETWEEN, IN, LIKE, IS NULL).
Opérateurs logiques (AND, OR, NOT).
Tri des résultats avec la clause ORDER BY (ASC, DESC, valeurs nulles).
Manipulation de chaînes (CONCAT, SUBSTR, LENGTH, INSTR, TRIM).
Fonctions numériques (ROUND, TRUNC, MOD).
Gestion des dates (SYSDATE, MONTHS_BETWEEN, ADD_MONTHS).
Fonctions de conversion explicite (TO_CHAR, TO_NUMBER, TO_DATE).
Fonctions générales de gestion des valeurs nulles (NVL, NVL2, COALESCE).
Logique conditionnelle imbriquée (CASE, DECODE).
Fonctions de groupe (SUM, AVG, MIN, MAX, COUNT).
Groupement des données avec GROUP BY et filtrage avec HAVING.
Concepts et types de jointures : INNER JOIN.
Jointures externes : LEFT, RIGHT et FULL OUTER JOIN.
Auto-jointures (Self-Joins) et jointures naturelles (Natural Joins).
Introduction aux opérateurs de requêtes d'ensemble (UNION, UNION ALL, INTERSECT, MINUS).
Sous-requêtes à ligne unique vs lignes multiples.
Opérateurs pour lignes multiples (IN, ANY, ALL).
Sous-requêtes corrélées et utilisation de l'opérateur EXISTS.
Clauses avancées de sous-requêtes dans le FROM (tables en ligne).
Insertion de lignes (INSERT) et insertions multi-tables.
Mise à jour (UPDATE) et suppression (DELETE) de données.
Utilisation de la commande MERGE.
Gestion du contrôle des transactions (COMMIT, ROLLBACK, SAVEPOINT).
Création, modification et suppression de tables (CREATE, ALTER, DROP).