Bases des bases de données

Une table Produit contient 5 lignes (Nom, Prix) : (Stylo, 120), (Cahier, 250), (Gomme, 80), (Classeur, 300), (Règle, 150). Quelle proposition donne, dans l'ordre, les lignes renvoyées par SELECT Nom FROM Produit WHERE Prix >= 150 ORDER BY Prix DESC ?

  1. ARègle, Cahier, Classeur
  2. BClasseur, Cahier
  3. CClasseur, Cahier, Règle
Afficher la réponse et l'explication

Réponse : C. Classeur, Cahier, Règle

WHERE Prix >= 150 ne sélectionne que les lignes dont le prix est supérieur ou égal à 150. La règle, à exactement 150, est incluse ; 3 lignes sont donc sélectionnées : Cahier (250), Classeur (300) et Règle (150). ORDER BY Prix DESC les trie ensuite du prix le plus élevé au plus bas (ordre décroissant), ce qui donne Classeur (300), Cahier (250), Règle (150). Spécifier ASC, ou rien, avec ORDER BY trie du plus bas au plus élevé (ordre croissant). Sans ORDER BY, l'ordre des lignes du résultat n'est pas garanti. Après SELECT, on écrit les colonnes à extraire (ici Nom), après FROM la table, et après WHERE la condition qui sélectionne les lignes.

S'entraîner sur ce thème Retour au thème

Autres questions sur Bases des bases de données

  1. La colonne Service d'une table Employe contient, de la première ligne à la dernière, Commercial, Développement, Commercial, Administration, Développement, Commercial (6 lignes au total). Combien de lignes renvoie SELECT DISTINCT Service FROM Employe ?
  2. Quel est le résultat de l'exécution en SQL de DELETE FROM Employe sans clause WHERE ?
  3. La colonne Points d'une table Examen contient 4 valeurs : 80, NULL, 70, 90 (NULL signifie que la personne n'a pas passé l'examen). Quel est le résultat de SELECT AVG(Points) FROM Examen ?
  4. La colonne Points d'une table Resultat contient 6 valeurs : 50, NULL, 70, NULL, 90, 30. Quelle proposition donne, dans l'ordre, le résultat de SELECT COUNT(*), COUNT(Points), AVG(Points) FROM Resultat ?
  5. À partir d'une table Employe(NumEmploye, Service, Salaire), on veut obtenir les services dont le salaire moyen est supérieur ou égal à 300, ainsi que ce salaire moyen. Quelle instruction SQL est correcte ?