J'ai besoin d'aide pour écrire une requête MySQL.Groupe mysql par où delta entre les enregistrements X
J'ai une table pleine de journaux où l'une des colonnes est un horodatage unix. Je veux grouper (GROUP BY) ces enregistrements de sorte que les événements qui ont été effectués à courte distance (c'est-à-dire 5 secondes) entre chacun d'entre eux appartiennent à un groupe.
Par exemple:
Tableau:
timestamp
----------
1429016966
1429016964
1429016963
1429016960
1429016958
1429016957
1429016950
1429016949
1429016943
1429016941
1429016940
1429016938
Devenir aux groupes comme ça:
GROUP_CONCAT(timestamp) | COUNT(*)
-----------------------------------------------------------------------------
1429016966,1429016964,1429016963,1429016960,1429016958,1429016957 | 6
1429016950,1429016949 | 2
1429016943,1429016941,1429016940,1429016938 | 4
Bien sûr, je peux travailler avec le tableau de données après en php, mais je pense que mysql le ferait plus vite.
débordement de la pile est pas un service d'écriture de code. Qu'avez-vous essayé jusqu'à présent? – NathanOliver
Je vais essayer de résoudre ce problème, mais j'ai donné une réponse similaire [ici] (http://stackoverflow.com/questions/28769211/display-dynamic-ranges-from-a-database-table-and-count- the-rows-within-each-rang/28769750 # 28769750) qui pourrait vous être utile. – AdamMc331
Je sais que ce n'est pas. J'ai déjà cherché pendant quelques heures, mais le meilleur que j'ai trouvé est l'intervalle par groupe, c'est-à-dire 10 min, 1 heure etc. où l'horodatage est divisé par 600, 3600. – Chris