Travail sur une Table Mysql

Résolu/Fermé
IceKarlX Messages postés 18 Date d'inscription mardi 26 juin 2007 Statut Membre Dernière intervention 20 juillet 2012 - 28 mai 2010 à 01:22
IceKarlX Messages postés 18 Date d'inscription mardi 26 juin 2007 Statut Membre Dernière intervention 20 juillet 2012 - 28 mai 2010 à 03:11
Bonjour,


Je vais essayer d'être clair et concis, seulement j'ai un peu du mal a savoir ce que je dois faire et comment, c'est pour cela que je viens réclamer votre aide et vos idées.

Tout d'abord j'ai une table contenant des users. Déjà petit problème, il peut y avoir plusieurs lignes pour un même user.

Mon but est de récupéré tous les users présent dans cette table, avec exactement le nombre de ligne qu'ils ont pour chaque user, certains peuvent en avoir 2500, d'autre 3...

Et faire un modulo de 300 sur le nombre de lignes de chaque user, et insérer donc l'user le nombre de ligne total et le modulo dans une nouvelle table, histoire de faire un truc propre.

Voila j'espère avoir été clair, juste pour info je travail sous PhPMyadmin 3.3.1...

J'aimerai savoir comment m'y prendre que je ne suis pas très calé en MySql, et je sais pas par ou commencer.

Merci a vous, et si vous avez besoin d'autres précisions, faite moi signe...

2 réponses

Salut

Si la table contenant les utilisateurs s'appelle users, et que l'identifiant d'un utilisateur est dans la colonne userid (et je ne présuppose pas que tu doives mettre une clé primaire sur userid), ton comptage sera
select userid, count(*) from users group by userid

l'opérateur modulo est noté % en mysql, donc ton recensement modulo 300 sera
select userid, count(*) % 300 from users group by userid

et s'il faut l'insérer dans une table genre stats(userid char(30), compte numeric), la requête sera
insert into stats select userid, count(*) % 300 from users group by userid

Je te laisse tester tout ça...
0
IceKarlX Messages postés 18 Date d'inscription mardi 26 juin 2007 Statut Membre Dernière intervention 20 juillet 2012
28 mai 2010 à 03:11
Merci beaucoup pour cette réponse rapide, j'avais oublié le Group By, d'ou mon problème avec cette gigantesque table.

Post résolu,

Encore une fois merci pour ta rapidité, si j'ai une autre question je te ferais signe...
0