Parc informatique - Recherches simples

Série d'exercices

Cet exercice fait partie d'une série :

On souhaite gérer le matériel informatique (ordinateurs, vidéoprojecteurs, imprimantes) présent dans un lycée.
Chaque ordinateur dispose d'un nom et est affecté à une salle. Chaque salle dispose d'un ordinateur professeur.
Les vidéoprojecteurs sont affectés à une salle.
Les imprimantes sont le plus souvent reliĂ©es Ă  un ordinateur. Il se peut cependant qu’elles en soient dĂ©connectĂ©es. Le champ nom_ordi vaut NULL dans ce cas-lĂ .

On a enregistré en mémoire une base de données dont la structure est présentée par le schéma ci-dessous :

sql

Le champ prof vaut \(1\) si l'ordinateur est situĂ© au bureau professeur de la salle, et \(0\) sinon. De la mĂȘme façon, le champ tni de la table Videoprojecteur vaut \(1\) s'il s'agit d'un tableau numĂ©rique et \(0\) sinon.

L'exercice utilise les mots SELECT, FROM, WHERE, COUNT, DISTINCT et ORDER BY.

On demande de complĂ©ter le code proposĂ© pour rĂ©aliser les requĂȘtes SQL suivantes :



Question 1

CrĂ©er la requĂȘte pour obtenir la salle et la marque de tous les ordinateurs :



Solution
SELECT salle, marque_ordi
FROM Ordinateur;
Question 2

CrĂ©er la requĂȘte pour obtenir le nom et la salle des ordinateurs professeurs :



Solution
SELECT nom_ordi, salle
FROM Ordinateur
WHERE prof = 1;
Question 3

CrĂ©er la requĂȘte pour obtenir toutes les informations sur les ordinateurs entrĂ©s Ă  partir de 2017 classĂ©s par ordre croissant d'anciennetĂ© :



Solution
SELECT *
FROM Ordinateur
WHERE annee >= 2017
ORDER BY annee DESC;
Question 4

CrĂ©er la requĂȘte pour obtenir le nombre d'ordinateurs dans la salle "223" :

Aide

La fonction SQL COUNT permet de comptabiliser le nombre d'enregistrements :

SELECT COUNT(numero)
FROM Salle;





Solution
SELECT COUNT(nom_ordi)
FROM Ordinateur
WHERE salle = "223";
Question 5

CrĂ©er la requĂȘte pour obtenir les annĂ©es d'installation des ordinateurs de la salle "223" (on Ă©vitera les doublons):

Aide

Le mot-clé DISTINCT permet de supprimer les doublons dans la liste de résultat :

SELECT DISTINCT marque_video
FROM Videoprojecteur;





Solution
SELECT DISTINCT annee
FROM Ordinateur
WHERE  salle = "223";