Problèmes pour tri d'une table

Fermé
melodide - 26 avril 2010 à 10:35
 melodide - 26 avril 2010 à 14:27
Bonjour à tous,

Je dispose d'une table appelé HISTO qui comporte 5 'variables' :
ID_HISTO
CODE
LIB
DATE
CDE_LABEL

J'aurais aimé grâce à une requête sql assembler les 'CODE_LABEL' semblables dans un même tableau et ça pour chaque code. En faite mes CODE_LABEL correspond aux codes des personnes inscrites à mon site internet et j'aurais voulu voir le nombre ou la fréquence de connexion pour chacun d'eux mais dans des tableaux différents pas un tri avec order by.

est ce possible??!
A voir également:

2 réponses

Lazarey Messages postés 3239 Date d'inscription vendredi 3 novembre 2006 Statut Membre Dernière intervention 21 mai 2012 745
Modifié par Lazarey le 26/04/2010 à 10:56
Salut,

Je pense avoir compris et oui c'est possible. essaye ça :

SELECT CDE_LABEL, count(ID_HISTO) FROM HISTO 
GROUP BY CDE_LABEL 
ORDER BY CDE_LABEL;


Tiens moi au courant !!
0
ça ne fonctionne pas on m'envoie un message d'erreur :

1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COUNT(ID_HISTO) FROM HISTO_ACTION GROUP BY CODE_LABEL ORDER BY CODE_LABEL' at line 1
0
En faite j'ai redemandé à mon patron ce qu'il voulait exactement et ce n'est pas ça.
Il veut que la base s'affiche sous cette forme :

code lib date cde_label
15348 action1 26/04/2010 12:36 9558
15346 action2 26/04/2010 12:38 9558
16489 action1 26/04/2010 12:40 6505
16479 action2 26/04/2010 12:42 6505

En faite il veut voir pour une même date les actions grouper par utilisateur

J'ai fait ce code :
$sql = 'SELECT * FROM HISTO GROUP BY CDE_LABEL ORDER BY DATE DESC';

Le problème c'est que ce code affiche :
code lib date cde_label
59225 connexion admin 26/04/2010 12:31:58 5706
59222 connexion admin 26/04/2010 12:18:42 156

Le tri par date est fait mais pas de regroupement par cde_label : ce code permet l'affichage d'une seule connexion d'un utilisateur (cde_label) et sa pour une seule date mais pas toutes ces connexions.

Par exemple d'après ce que me renvoie le code mon patron qui se connecte au moins une dizaine de fois par jour au site ne se serais connecter qu'une fois le 12/12/2008 je ne comprend donc pas pourquoi ça ne fonctionne pas
0
Lazarey Messages postés 3239 Date d'inscription vendredi 3 novembre 2006 Statut Membre Dernière intervention 21 mai 2012 745
26 avril 2010 à 13:18
Il faut que tu mette tout dans ton order by.
Le group by n'est utile que si tu utilise des fonctions du genre count(), sum(), max(), etc.

Mais je viens de voir un truc. Dans ton champ date, tu as à la fois la date et l'heure non ?

Si c'est le cas, tu dois extraire seulement la date et supprimer l'heure. C'est quoi comme type le champ DATE de ta base ?
0
Ok pour ça mais comment je supprime l'heure? le type de DATE c'est datetime
0
Le truc c'est qu'il veut pour une même date quelque chose qui ressemble à ça :

code lib date cde_label
1538 connexion 26/04/2010 1 +

et quand on clique sur le '+' on voit toutes les actions de cet utilisateur pour cette date.
0