Requête Sql de trie j'arrive pas celle là
9 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
-

linkadress - WRInaute occasionnel

- Messages: 156
- Inscription: Jeu Mar 30, 2006 18:47
Requête Sql de trie j'arrive pas celle là
Bon, après moulte recherche sur le langage SQL, je me décide à demander un conseil ou plutôt une solution si possible...
Je n'arrive pas à trier dans ma base les répétitions de pseudo posteur...
Si le pseudoA postent 10 liens et le posteurB postent 20liens ainsi de suite...
Je voudrais faire un Top Posteur en gros, classé par celui qui a le plus posté.
Je n'arrive pas à trier dans ma base les répétitions de pseudo posteur...
Si le pseudoA postent 10 liens et le posteurB postent 20liens ainsi de suite...
Je voudrais faire un Top Posteur en gros, classé par celui qui a le plus posté.
-

linkadress - WRInaute occasionnel

- Messages: 156
- Inscription: Jeu Mar 30, 2006 18:47
Merci, j'avance déjà un peu avec votre requête, le truc dont je viens de me rendre compte, c'est que je fais pas d'update, d'un champ nbposts / pseudo, donc j'ai un paramètre manquant...
Donc il faut que je calcule le nb de fois ou on trouve un pseudo que je joigne à une comparaison avec les autres pseudos et que je ressorte un classement ...
Mais je ne vois pas la syntaxe...
Donc il faut que je calcule le nb de fois ou on trouve un pseudo que je joigne à une comparaison avec les autres pseudos et que je ressorte un classement ...
Mais je ne vois pas la syntaxe...
- Code: Tout sélectionner
--
-- Table structure for table `test`.`post`
--
DROP TABLE IF EXISTS `post`;
CREATE TABLE `post` (
`IDPost` int(10) unsigned NOT NULL auto_increment,
`IDPseudo` int(10) unsigned default NULL,
`link` varchar(45),
PRIMARY KEY (`IDPost`),
KEY `FK_post_1` (`IDPseudo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Dumping data for table `test`.`post`
--
/*!40000 ALTER TABLE `post` DISABLE KEYS */;
INSERT INTO `post` (`IDPost`,`IDPseudo`,`link`) VALUES
(1,1,'linkA1'),
(2,1,'linkA2'),
(3,1,'linkA3'),
(4,2,'linkB1'),
(5,2,'linkB2');
/*!40000 ALTER TABLE `post` ENABLE KEYS */;
--
-- Table structure for table `test`.`pseudo`
--
DROP TABLE IF EXISTS `pseudo`;
CREATE TABLE `pseudo` (
`IDPseudo` int(10) unsigned NOT NULL auto_increment,
`Pseudo` varchar(45),
`email` varchar(45),
`nom` varchar(45) ,
PRIMARY KEY (`IDPseudo`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
--
-- Dumping data for table `test`.`pseudo`
--
/*!40000 ALTER TABLE `pseudo` DISABLE KEYS */;
INSERT INTO `pseudo` (`IDPseudo`,`Pseudo`,`email`,`nom`) VALUES
(1,'PseudoA','pseudoa@example.com','pseudoa'),
(2,'PseudoB','pseudoB@example.com','pseudob');
/*!40000 ALTER TABLE `pseudo` ENABLE KEYS */;
La requête SQL :
- Code: Tout sélectionner
SELECT pseudo, count(*) as NBPost
FROM pseudo ps INNER JOIN post po ON ps.IDPseudo = po.IDPseudo
GROUP BY pseudo
ORDER BY NBPost desc;
le résultat :
- Code: Tout sélectionner
pseudo NBPost
PseudoA 3
PseudoB 2
-

linkadress - WRInaute occasionnel

- Messages: 156
- Inscription: Jeu Mar 30, 2006 18:47
Merci pour vos réponses rapides, et aussi pour ce script qui m'a grandement aidé, j'ai réussi à faire ce que je voulais 
Tu auras corrigé de toi même l'erreur grossière qui se cache dans ma requête SQL.
La requête marche mais elle n'est pas du tout optimisée.
Il vaut mieux faire :
GROUP BY IDPseudo => Clé primaire, Int, Champ indexé
plutôt que
GROUP BY Pseudo => Varchar non indexé
La requête marche mais elle n'est pas du tout optimisée.
Il vaut mieux faire :
GROUP BY IDPseudo => Clé primaire, Int, Champ indexé
plutôt que
GROUP BY Pseudo => Varchar non indexé
-

linkadress - WRInaute occasionnel

- Messages: 156
- Inscription: Jeu Mar 30, 2006 18:47
Oui , j'ai un peu modifié l'énoncé des tables.
En fait j'ai créé une seconde table donc comme toi valeurpseudo, pour alimenter un champ lienspost qui pourra subir une comparaison....
J'avais perdu facile 1h car j'avais créé un champ lienspost varchar(50) que je tentais de classer alors que c'est mieux qu'en c'est un entier.
J'ai remanié la déclaration de tables, et les fonctions de requête en m'inspirant de ta vision du problème...
Une chose est sûre, j'aurais bien progressé sur Sql.
Je vais voir encore si je peux optimiser les calculs, et anticiper lorsque les bases seront importantes....
Merci, c'est bien cool.
En fait j'ai créé une seconde table donc comme toi valeurpseudo, pour alimenter un champ lienspost qui pourra subir une comparaison....
J'avais perdu facile 1h car j'avais créé un champ lienspost varchar(50) que je tentais de classer alors que c'est mieux qu'en c'est un entier.
J'ai remanié la déclaration de tables, et les fonctions de requête en m'inspirant de ta vision du problème...
Une chose est sûre, j'aurais bien progressé sur Sql.
Je vais voir encore si je peux optimiser les calculs, et anticiper lorsque les bases seront importantes....
Merci, c'est bien cool.
9 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- L'essentiel à savoir sur l'oculométrie (Eye Tracking - suivi du regard)
- Les sites les plus visibles pour le mot Google
- AdSense Tracking : statistiques détaillées sur les clics AdSense
- Le baromètre de la visibilité des sites pour le terme "Google"
- Articles sur Google et le référencement
- Googlebot analyse certains codes JavaScript
- La mise à jour BigDaddy se poursuit...
- Lancement confirmé de MSN Search
- La mise à jour du mois de juillet arrive...
- Statistiques des requêtes sur les moteurs en 2006
- requête sql help!!
- [sql] Requête
- pb de requête sql
- Requête SQL
- Nombre de requete sql
- Requete SQL spécial :s
- Requete SQL spécifique
- Requete SQL contenu
- Optimiser requete sql
- Problème de requête SQL
- erreur de requete sql
- Requete SQL compliquée
- Erreur requete SQL
- Requête SQL débutant
- Requête SQL particulière
- Trouver la position d'un site dans Google
Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Google, pour certains mots-clés recherchés. - Trouver la position d'un site dans Yahoo
Cet outil vous permet de vérifier si une ou plusieurs page(s) de votre site arrive(nt) dans les premiers résultats de Yahoo, pour certains mots-clés recherchés.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



le forum