--1.	Combien d'arènes l'équipe Intuition a pris le contrôle?
SELECT COUNT(DISTINCT idArene)
FROM Defense d, Equipe e
WHERE idEquipe = e.id
AND nom = 'Intuition';
--2.	Quelle est la date de la première apparition de Tygnon ?
SELECT MIN(horaire)
FROM Apparition a, Pokemon p
WHERE idPokemon = p.id
AND nom = 'Tygnon';
--3.	Quels sont les joueurs qui ont participé à la défense de l'arène EISTI ? 
SELECT pseudonyme 
FROM Joueur j, Arene a, Defense d
WHERE j.idEquipe = d.idEquipe
AND idArene = a.id
AND UPPER(nom) = 'EISTI';
--4.	Compter le nombre de Pokémons de chaque joueur. Le pseudonyme du joueur suffit dans la réponse.
SELECT idJoueur,COUNT(*)
FROM Pokemon 
GROUP BY idJoueur;
--5.	Quelle est la moyenne des points de combat de chaque espèce de Pokémon ?  
SELECT AVG(pointCombat)
FROM Pokemon
GROUP BY espece;
--6.	Pour chaque joueur, afficher son pseudonyme, son équipe et le nombre de Pokémons qu'il possède.
SELECT idJoueur, e.nom, COUNT(p.id)
FROM joueur j, equipe e, pokemon p
WHERE idEquipe = e.id
AND idJoueur = pseudonyme 
GROUP BY idJoueur, e.nom;
--7.	Pour chaque Pokémon, donner le nom et la durée totale d'apparition. 
SELECT nom, SUM(duree)
FROM Pokemon p, Apparition a
WHERE p.id = idPokemon 
GROUP BY p.id, nom;
--8.	Donner pour chaque arène son nom et la date de prise de contrôle la plus récente. 
SELECT nom, MAX(dateControle)
FROM Arene a, Defense d
WHERE a.id = idArene 
GROUP BY a.id, nom; 
--9.	Pour chaque Pokémon, donner son nom, son espèce et le nombre d'apparitions. Nous sommes intéressés seulement aux Pokémons qui ont apparu au moins 2 fois. 
SELECT nom, espece, COUNT(idPokemon)
FROM Pokemon p, Apparition a
WHERE p.id = idPokemon 
GROUP BY p.id, nom, espece
HAVING COUNT(idPokemon) >= 2;
--10.	Pour chaque Pokémon, donner son nom, son espèce et le nombre d'apparitions dont la durée est supérieure à 5 minutes.
SELECT nom, espece, COUNT(idPokemon)
FROM Pokemon p, Apparition a
WHERE p.id = idPokemon 
AND duree > 5
GROUP BY p.id, nom, espece;