-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathrequetes.sql
69 lines (52 loc) · 2.91 KB
/
requetes.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
--------------------------------------------------------------------------------------------------------
-- Lister tous les personnages du jeu :
--------------------------------------------------------------------------------------------------------
SELECT *
FROM personnages;
--------------------------------------------------------------------------------------------------------
-- Lister chaque joueur et son personnage associé :
--------------------------------------------------------------------------------------------------------
SELECT *
FROM utilisateurs
INNER JOIN personnages ON utilisateurs.id_personnage = personnages.id_personnage;
--------------------------------------------------------------------------------------------------------
-- Afficher la liste des personnages présents dans la cuisine entre 08:00 et 09:00 :
--------------------------------------------------------------------------------------------------------
SELECT *
FROM personnages
INNER JOIN visiter ON personnages.id_personnage = visiter.id_personnage
INNER JOIN salles ON visiter.id_salle = salles.id_salle
WHERE LOWER(salles.nom_salle) = LOWER('cuisine') AND visiter.heure_arrivee BETWEEN '08:00' AND '09:00';
--------------------------------------------------------------------------------------------------------
-- Afficher les pièces où aucun personnage n'est allé :
--------------------------------------------------------------------------------------------------------
SELECT *
FROM salles
LEFT JOIN visiter ON salles.id_salle = visiter.id_salle
WHERE visiter.id_personnage IS NULL;
--------------------------------------------------------------------------------------------------------
-- Compter le nombre d'objets par pièce :
--------------------------------------------------------------------------------------------------------
SELECT salles.nom_salle, COUNT(objets.id_objet)
FROM salles
LEFT JOIN objets ON salles.id_salle = objets.id_salle
GROUP BY salles.nom_salle ORDER BY COUNT(objets.id_objet);
--------------------------------------------------------------------------------------------------------
-- Ajouter une pièce :
--------------------------------------------------------------------------------------------------------
INSERT INTO salles (nom_salle) VALUES ('nouvelle salle');
--------------------------------------------------------------------------------------------------------
-- Modifier un objet :
--------------------------------------------------------------------------------------------------------
UPDATE objets
SET nom_objet = 'nouvel objet'
WHERE id_objet = 1;
--------------------------------------------------------------------------------------------------------
-- Supprimer une pièce:
--------------------------------------------------------------------------------------------------------
DELETE FROM objets
WHERE id_salle = 3;
DELETE FROM visiter
WHERE id_salle = 3;
DELETE FROM salles
WHERE id_salle = 3;