J'ai 2 tables dans ma base de données. Un suivi lorsque les utilisateurs se connectent: ID, nom, IP, & horodatage. L'autre est une série d'événements: id, nom de l'événement, IP, & horodatage.Connectez-vous à l'utilisateur à partir de l'horodatage
Existe-t-il un moyen facile de voir quel utilisateur est connecté pour un événement spécifique?
Par exemple, si je
id l_ip l_user l_time
0 172.16.1.10 ces77 2010-12-14 09:02:12
1 172.16.1.64 ces34 2010-12-14 10:06:43
2 172.16.1.10 ces47 2010-12-14 11:10:52
et
id e_name e_ip e_time
0 remove 172.16.1.10 2010-12-14 09:10:33
1 run 172.16.1.64 2010-12-14 10:15:10
2 change 172.16.1.64 2010-12-14 10:20:32
3 run 172.16.1.10 2010-12-14 12:55:59
pourrais-je exécuter une requête pour me donner à l'utilisateur pour chacun des événements de sorte qu'il produirait?
id e_name e_ip e_time l_user
0 remove 172.16.1.10 2010-12-14 09:10:33 ces77
1 run 172.16.1.64 2010-12-14 10:15:10 ces34
2 change 172.16.1.64 2010-12-14 10:20:32 ces34
3 run 172.16.1.10 2010-12-14 12:55:59 ces47
Au début, je pensais que l'autre solution fonctionnait, mais plus tard réalisé que non. Cela renverra tout utilisateur connecté auparavant. Je pense que Michael a raison ... mais cela signifie que je dois redessiner certaines parties du programme: ( – Nathan
En supposant qu'un utilisateur est toujours connecté lorsqu'un événement se produit, voir ma réponse qui correspond à votre jeu de données – Danosaure
@Danosaure: Un intéressant Pour ce faire, il vaut mieux payer le coût de l'agrégation et de la validation des données dès le départ, et passer à un modèle où toutes les informations appropriées sont enregistrées, sauf s'il y a vraiment une bonne raison de faire autrement. , il me semble logique de garder le coût de lecture des données bas: il y a déjà assez de tâches de traitement de données qui prennent du temps sans traitement supplémentaire inutile pour répondre à des questions comme celle-ci ... –