Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 02/01/2014 12:33:11
- CHR
- Membre
[RESOLU] - SELECT pour choisir une première occurence en fonction
Merci encore pour la réponse super rapide à mon premier post tout à l'heure et puisque j'y ai aussi planché sans grand succès, toujours sur pagila mais cette fois sur la table film où je souhaiterai obtenir le premier titre disponible pour chacun des ratings existants (G, PG-13, NC-17). Dans MS-Access j'utilise la fonction d'agrégation "last(title)" mais je sais que "last" n'existe pas dans pg.
rating Nb Title (film_id)
G 200 Bunch Minds (107)
PG-13 187 Butch Panther (108)
NC-17 299 Cabin Flash (110)
Voilà et encore merci pour votre aide,
chr
Dernière modification par CHR (02/01/2014 13:53:45)
Hors ligne
#2 02/01/2014 13:06:31
- rjuju
- Administrateur
Re : [RESOLU] - SELECT pour choisir une première occurence en fonction
Vous pouvez utiliser la fonction d'aggrégation min(title) qui renverra le premier titre par ordre alphabétique.
Julien.
https://rjuju.github.io/
Hors ligne
#3 02/01/2014 13:17:52
- CHR
- Membre
Re : [RESOLU] - SELECT pour choisir une première occurence en fonction
merci ! Et si je souhaite obtenir le titre lié au plus film_id ?
Hors ligne
#4 02/01/2014 13:49:52
- rjuju
- Administrateur
Re : [RESOLU] - SELECT pour choisir une première occurence en fonction
Cette requête devrait convenir (en supposant que vous vouliez dire "plus petit film_id") :
SELECT sql.rating, sql.nb, f.title
FROM (
SELECT rating,count(*) as nb, min(film_id) as film_id
from film
group by 1
) sql
JOIN film f ON f.film_id = sql.film_id;
Julien.
https://rjuju.github.io/
Hors ligne
#5 02/01/2014 13:53:23
- CHR
- Membre
Re : [RESOLU] - SELECT pour choisir une première occurence en fonction
Impressionnée par les administrateurs de ce site, ça fonctionne parfaitement bien.
Que 2014 vous apporte des questions sympa et plein de bonnes choses et encore MERCI pour l'aide !
Hors ligne