Parc informatique - Recherches simples
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 :
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";