1/23
Fiches de révision portant sur les commandes fondamentales du LDD (Create Table, Alter Table, contraintes), du LMD (Insert, Update, Delete, Select) et des clauses SQL (Group By, Having, Order By, fonctions d'agrégation).
Quelles sont les 5 fonctions d'agrégation principales abordées en SQL ?
Les 5 fonctions d'agrégation sont SUM, MIN, MAX, AVG et COUNT.
Quel est le rôle de la fonction d'agrégation SUM en SQL ?
Elle calcule la somme totale des valeurs d'une colonne. Par exemple, pour des salaires de 500d, 1500d et 800d, SUM(salaire) donne 2800d.
Quelle est la différence entre les fonctions MIN et MAX ?
MIN retourne la valeur minimale d'une colonne (par exemple 500d), tandis que MAX retourne la valeur maximale (par exemple 1600d).
Comment la fonction d'agrégation AVG opère-t-elle sur les données ?
Elle calcule la moyenne arithmétique en effectuant la somme des valeurs divisée par le nombre de valeurs (par exemple : (500+1500+800)/3=933d).
Quel est le rôle de la fonction COUNT en SQL ?
COUNT est un compteur qui calcule et retourne le nombre d'enregistrements ou de valeurs non nulles.
Quelle est l'utilité du mot-clé AS (alias) dans une requête SQL ?
Il remplace le nom d'une colonne ou d'une table par un nouvel identifiant (alias) afin de faciliter la manipulation ou de renommer le résultat d'une fonction d'agrégation (ex. : select count(idclient) as "nombres clients").
Dans quel contexte utilise-t-on la clause GROUP BY ?
Elle est utilisée pour regrouper les données selon une caractéristique commune afin de faciliter leur traitement. Elle correspond généralement à l'emploi du terme « chaque » dans l'énoncé (ex. : GROUP BY idpays pour chaque pays).
Pourquoi utilise-t-on la clause HAVING plutôt que WHERE avec les fonctions d'agrégation ?
La clause WHERE ne peut jamais être utilisée avec des fonctions d'agrégation. Lorsqu'une condition doit porter sur le résultat d'une fonction d'agrégation, on emploie obligatoirement HAVING après le GROUP BY.
Quelle requête permet d'afficher les pays ayant au moins 3 séjours ?
SELECT idpays FROM sejours GROUP BY idpays HAVING COUNT(idsej) >= 3;
Quelles sont les deux options de tri de la clause ORDER BY ?
ASC pour un tri par ordre croissant et DESC pour un tri par ordre décroissant.
Quelles sont les deux principales instructions associées au LDD (Langage de Définition de Données) ?
CREATE TABLE (pour la création d'une base ou d'une table) et ALTER TABLE (pour la modification d'une table avec add, drop, enable).
Dans la description textuelle d'une table, comment reconnaît-on la clé primaire et la clé étrangère ?
La clé primaire est signalée par un nom de colonne souligné, tandis que la clé étrangère est indiquée par la présence d'un dièse (#) à côté du nom de la colonne.
Quelle est la différence fondamentale entre les types VARCHAR et CHAR ?
VARCHAR définit une longueur maximale variable (il ne faut pas dépasser la limite, mais moins est accepté), tandis que CHAR impose une longueur fixe exacte.
Pourquoi la valeur « salma » est-elle acceptée pour un champ CHAR(5) alors que « baya » et « khalil » sont incorrectes ?
Parce que « baya » ne contient que 4 caractères et « khalil » en contient 6, alors que CHAR(5) exige strictement 5 caractères, ce qui correspond exactement à « salma ».
Quelle commande ALTER TABLE permet d'ajouter une colonne à une table existante ?
ALTER TABLE 'table' ADD 'colonne' type;
Quelle commande ALTER TABLE permet de supprimer une colonne d'une table ?
ALTER TABLE 'table' DROP 'colonne';
Comment rend-on une colonne obligatoire avec la contrainte NOT NULL via ALTER TABLE ?
ALTER TABLE 'table' MODIFY 'colonne' type SET NOT NULL;
Comment ajoute-t-on une contrainte UNIQUE ou CHECK avec ALTER TABLE ?
ALTER TABLE 'table' ADD CONSTRAINT nom_contrainte UNIQUE (colonne); ou ALTER TABLE 'table' ADD CONSTRAINT nom_contrainte CHECK (condition);
Comment ajoute-t-on une contrainte de clé primaire et comment la supprime-t-on avec ALTER TABLE ?
Pour l'ajout : ALTER TABLE 'table' ADD CONSTRAINT nom_con PRIMARY KEY (colonne);. Pour la suppression : ALTER TABLE 'table' DROP CONSTRAINT PRIMARY KEY;.
Quelle est la syntaxe pour ajouter une clé étrangère via ALTER TABLE ?
ALTER TABLE 'table' ADD CONSTRAINT nc FOREIGN KEY (colonne) REFERENCES table (colonne);
Quelle est la structure de base d'une requête d'insertion INSERT INTO en LMD ?
INSERT INTO Nom_de_table (colonne1, colonne2, ...) VALUES (valeur1, valeur2, ...);
Quelle est la structure générale de l'instruction UPDATE en SQL ?
UPDATE Nom_de_table SET champ = nouveau_valeur WHERE condition;
Quelle est la syntaxe générale de l'instruction DELETE en SQL ?
DELETE FROM Nom_de_table WHERE condition;
Quel est l'ordre des clauses dans la structure d'une requête SELECT standard ?
SELECT Nom_de_champ FROM Nom_de_table WHERE condition ORDER BY Nom_de_champ ASC/DESC.