SELECT MAX avec GROUP BY [RESOLU] - SQL/NoSQL - Programmation
Marsh Posté le 07-06-2008 à 13:11:30
Quel SGBD ? 
 
Avec MySQL : 
 
select id 
from ( 
  select id,count(1) c 
  from votes 
  group by id 
) 
order by c desc 
limit 1 
 
On crée une sous requête qui renvoie les id avec leur nombre d'ip ("c" ) et on prend la ligne avec le plus grand "c", c'est à dire la 1ère quand on trie par "c" décroissant  
 
Marsh Posté le 07-06-2008 à 13:51:17
Bon ba écoute merci mrbebert ça marche parfaitement. Je viens d'apprendre que l'on peut créer sa propre sous table et la mettre dans un FROM. 
 
Une toute petite correction  
 
| Code : 
 | 
 
 
Il faut ajouter un un nom 'temp' à table crée car sinon mySQL te répond 
#1248 - Every derived table must have its own alias  
 
Encore merci  
 
 
Marsh Posté le 08-06-2008 à 02:46:56
je vois franchement pas l'interet de construire une requete dérivée pour ca ! 
 
c'est pas 10x plus simple ? : 
| Code : 
 | 
Marsh Posté le 07-06-2008 à 01:59:58
Bonjour à tous,
Voila j'ai une simple table 'votes' qui contient 2 champs tout 2 clé primaire
ip - id
Et je voudrais afficher l'id qui contient le plus d'ip.
Voila la requête que j'ai pondu:
La requête ne fonctionne pas et je n'arrive pas à l'écrire autrement.
Merci de votre aide
Message édité par spos93 le 07-06-2008 à 13:51:34