MYSQL - grouper par interval de temps - SQL/NoSQL - Programmation
Marsh Posté le 08-03-2010 à 16:48:08
c'est quoi ton sgbd et le type de ta colonne date? c'est bien un type date qqconque et pas un varchar?
Edit: désolé j'avais pas lu le titre du topac. ca devrait marcher pareil sous mysql...
en gros il te faut trouver la fonction qui transforme ta date en un dénominateur de ton intervalle, par exemple pour des intervalles d'une heure (sous oracle):
Code :
|
et du coup tu dois pouvoir faire
Code :
|
par contre ce genre de code c'est pour créer arbitrairement des intervalles. si tu veux que ce soit toutes les occurrences qui se suivent à moins de 10mn qui soient regroupées, ca ne marchera pas et ca sera bcp plus compliqué (faisable en traitement applicatif plutot)
Marsh Posté le 08-03-2010 à 17:04:55
pour mysql, avec des intervalles de temps de 10mn, tu peux faire ca:
Code :
|
Marsh Posté le 10-03-2010 à 10:22:33
Merci pour ta réponse, j'ai mis en place des regroupement de 10min, quand j'aurai plus de temps je me lancerai dans une application pour avoir des résultats plus juste.
Marsh Posté le 08-03-2010 à 14:57:44
Bonjour,
Je cherche a grouper par interval de temps les données d'une table :
j'ai une table avec un enregistrement a chaque fois que quelqun badge pour ouvrir une porte.
voici la table :
porte | badge | date
2 | 342 | 2010-02-02 12:20:38
2 | 456 | 2010-02-02 12:22:12
2 | 722 | 2010-02-02 12:30:40
2 | 722 | 2010-02-02 12:31:08
2 | 722 | 2010-02-02 12:31:35
2 | 309 | 2010-02-02 13:10:58
2 | 456 | 2010-02-02 14:56:19
2 | 722 | 2010-02-02 18:11:55
je cherche une solution pour avoir tous les numéros de badge qui ont ouvert la porte sans avoir de "doublon" (ne pas faire apparaitre plusieurs fois un même numéro de badge si il a été utilisé plusieurs fois en moins de 10 min par exemple)