############## # Exercice 1 # ############## CREATE TABLE Musiciens ( Nom TEXT, Groupe TEXT, Instrument TEXT, Chant INTEGER, Pays TEXT, Age INTEGER) ############## # Exercice 2 # ############## INSERT INTO Musiciens VALUES ('Thurston Moore','Sonic Youth','Guitare',1,'USA',50) ('Lee Ranaldo','Sonic Youth','Guitare',1,'USA',52) ('Kim Gordon','Sonic Youth','Basse',1,'USA',47) ('Steve Shelley','Sonic Youth','Batterie',0,'USA',45) ############## # Exercice 3 # ############## SELECT * FROM Musiciens WHERE Pays='France' SELECT Nom,Age FROM Musiciens WHERE Chant=1 SELECT Nom FROM Musiciens WHERE Chant=1 AND Pays='USA' SELECT DISTINCT Groupe FROM Musiciens WHERE Pays='USA' SELECT Nom,Age,Groupe FROM Musiciens WHERE Instrument='Guitare' ORDER BY Age UPDATE Musiciens SET Instrument='Guitare', Groupe='Sepultura' WHERE Instrument='Basse' AND Groupe='Sonic Youth' INSERT INTO Musiciens VALUES ('Krist Novoselic','Sonic Youth','Basse',0,'USA',22) DELETE FROM Musiciens WHERE Groupe='Fugazi' UPDATE Musiciens SET Groupe='Blood Incantation' WHERE Groupe='Tomb Mold' UPDATE Musiciens SET Nom='Paulo Destructor' WHERE Groupe='Sepultura' AND Instrument='Basse' ############## # Exercice 4 # ############## CREATE TABLE Groupes ( id INTEGER PRIMARY KEY, Nom_groupe TEXT, Pays TEXT, Genre TEXT, Nombre_albums INTEGER, Date_formation INTEGER ) CREATE TABLE Musiciens2 ( Nom TEXT, Groupe REFERENCES Groupes(id), Instrument TEXT, Chant INTEGER, Age INTEGER) ############## # Exercice 5 # ############## SELECT * FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe SELECT Nom,Age FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe WHERE Genre='Rock' AND Instrument='Guitare' SELECT Nom,Nom_groupe FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe WHERE Genre='Metal' AND Instrument='Batterie' AND Nombre_albums>10 SELECT SUM(Nombre_albums) FROM Groupes WHERE Genre='Electro' SELECT AVG(Nombre_albums) FROM Groupes WHERE Genre='Rock' SELECT Nom,Age,Nom_groupe FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe WHERE Chant=1 ORDER BY Age SELECT Nom ,Nombre_albums FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe WHERE Chant=1 ORDER BY Nombre_albums DESC SELECT COUNT(*) FROM Musiciens2 WHERE Chant=1 AND Instrument='Basse' SELECT Pays FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe WHERE Chant=1 AND Instrument='Basse' SELECT Nom_groupe , 2024-Date_formation FROM Groupes SELECT Nom,Nom_groupe,Age-(2024-Date_formation) FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe SELECT DISTINCT Pays FROM Musiciens2 INNER JOIN Groupes ON Groupes.id = Musiciens2.Groupe WHERE Instrument='Batterie' AND Age<40