Mon algorithme est pour un 'compteur de hits', j'essaie de ne pas compter deux fois la même personne si cette personne est venue deux fois sur le site intervalle de temps (par exemple, s'il vient deux fois en 5 minutes, je veux compter comme 1 succès pour cette personne)J'ai besoin de quelques idées sur mon algorithme pour un compteur de hits (Group By Time Interval)
Voici ce que ma base de données ressemble
UserIp UserId Date of user came
127.0.0.1 new.user.akb 26.03.2010 10:15:44
127.0.0.1 new.user.akb 26.03.2010 10:16:44
127.0.0.1 new.user.akb 26.03.2010 10:17:44
127.0.0.1 new.user.akb 26.03.2010 10:18:44
127.0.0.1 new.user.akb 26.03.2010 10:19:44
127.0.0.1 new.user.akb 26.03.2010 10:20:44
127.0.0.1 new.user.akb 26.03.2010 10:21:44
127.0.0.1 new.user.akb 26.03.2010 10:22:44
127.0.0.1 new.user.akb 26.03.2010 10:23:44
ce que je dois faire est d'obtenir le numéro de UserIP distincts de la table ci-dessus qui s'est produite dans un intervalle de temps. Par exemple, si je mets l'intervalle de temps pendant 5 minutes, et disons qu'il commence à
26.03.2010 10:15:44
Ensuite, je vais obtenir 2 que les résultats, car il y a une valeur distincte entre 10:15-10:20 et , 1 autre valeur distincte 10h20-10h23,
Par exemple, si mon intervalle est de 3 minutes que le résultat de retour sera 3
Êtes-vous plus intéressé par un sql ou C# solution? –
Sql solution serait mieux pour moi. – stckvrflw
J'ai décidé d'ajouter une solution linq en C# à ma réponse. –