Quiz : SQL LMD

Parmi les assertions suivantes concernant le langage SQL, sélectionner celles qui sont correctes.

Le langage SQL permet d'implémenter physiquement un modèle logique exprimé en relationnel.

Le langage SQL permet d'entrer et de sortir des données d'une base de données.

Le langage SQL permet de donner et d'enlever des droits en lecture sur les données d'une base de données.

Le langage SQL permet de donner et d'enlever des droits en écriture sur les données d'une base de données.

Le langage SQL permet de créer une interface graphique utilisable par les utilisateurs finaux.

Le langage SQL permet de faire des traitements algorithmiques complexes.

Le langage SQL permet en général de créer une application informatique complète.

Soit les deux relations suivantes UV1 et UV2 représentant respectivement les places disponibles dans les cours de l'UTC et les inscriptions effectives pour les cours ouverts ce semestre :

Compléter la requête SQL suivante pour qu'elle retourne pour tous les cours avec leur nom, plus le nombre d'inscrits en excès ou en défaut pour les cours ouverts et NULL pour les cours fermés.

SELECT UV1.Nom, UV2.Nombre-UV1.Nombre

FROM UV1 LEFT JOIN UV2

ON UV1.Nom=UV2.Nom

Soit les deux relations suivantes UV1 et UV2 représentant respectivement les places disponibles dans les cours de l'UTC et les inscriptions effectives pour les cours ouverts ce semestre :

Compléter la requête SQL suivante pour qu'elle retourne, pour les cours ouverts uniquement, le nombre d'inscrits moyen selon le nombre de places (nombre d'inscrits moyens pour les cours de 168 places, pour ceux de 48 places, etc.)

SELECT UV1.Nombre, avg(UV2.Nombre)

FROM UV1 JOIN UV2

ON UV1.Nom=UV2.Nom

GROUP BY UV1.Nombre

Quelle sont les requêtes équivalente à la requête ci-dessous :

SELECT Nom
FROM Personne
WHERE NOT(Nom IS NULL)
GROUP BY Nom

SELECT DISTINCT Nom

FROM Personne

WHERE Nom LIKE '%'

SELECT Nom

FROM Personne

SELECT Nom

FROM Personne

GROUP BY Nom

HAVING Count(Nom) > 0

SELECT Nom

FROM Personne

WHERE NOT(Nom IS NULL)

Que renvoie la dernière instruction SQL de la séquence ci-dessous ?

CREATE TABLE R (a INTEGER, b INTEGER);
INSERT INTO R VALUES (1,1);
INSERT INTO R VALUES (1,2);
INSERT INTO R VALUES (3,3);
SELECT sum(R1.b) FROM R R1, R R2 WHERE R1.a=R2.a;

Parmi les assertions suivantes concernant le langage SQL, sélectionner celles qui sont correctes.

Le langage SQL permet d'implémenter physiquement un modèle logique exprimé en relationnel.

Le langage SQL permet d'entrer et de sortir des données d'une base de données.

Le langage SQL permet de donner et d'enlever des droits en lecture sur les données d'une base de données.

Le langage SQL permet de donner et d'enlever des droits en écriture sur les données d'une base de données.

Le langage SQL permet de créer une interface graphique utilisable par les utilisateurs finaux.

Le langage SQL permet de faire des traitements algorithmiques complexes.

Le langage SQL permet en général de créer une application informatique complète.

SELECT UV1.Nom, UV2.Nombre-UV1.Nombre

FROM UV1 LEFT JOIN UV2

ON UV1.Nom=UV2.Nom

SELECT UV1.Nombre, avg(UV2.Nombre)

FROM UV1 JOIN UV2

ON UV1.Nom=UV2.Nom

GROUP BY UV1.Nombre

SELECT DISTINCT Nom

FROM Personne

WHERE Nom LIKE '%'

SELECT Nom

FROM Personne

SELECT Nom

FROM Personne

GROUP BY Nom

HAVING Count(Nom) > 0

SELECT Nom

FROM Personne

WHERE NOT(Nom IS NULL)

SELECT DISTINCT Nom

FROM Personne

WHERE Nom LIKE '%'

SELECT Nom

FROM Personne

SELECT Nom

FROM Personne

GROUP BY Nom

HAVING Count(Nom) > 0

Count(Nom) ne compte pas les Nom=NULL, le GROUP BY élimine les doublons.

SELECT Nom

FROM Personne

WHERE NOT(Nom IS NULL)

Dans la requête de départ, la clause WHERE NOT(Nom IS NULL) supprime la valeur Null du résultat, ce que reproduit WHERE Nom LIKE '%' et HAVING Count(Nom)>0.

Dans la requête de départ, la clause GROUP BY a pour seul effet de supprimer les doublons, ce qui est (avantageusement) reproduit par la clause SELECT DISTINCT.

9

AccueilExercices > Test (0,5h)< PrécédentSuivant >