【发布时间】:2016-01-28 19:12:10
【问题描述】:
我想获取一个用户的活动时间..
比如他什么时候离开,什么时候回来,离开了多长时间
表格看起来像这样..
id deviceid time status
11 123-123 09:59 1
12 123-123 10:00 0
13 123-123 10:02 0
14 123-123 10:03 0
15 123-123 10:04 0
16 123-123 10:05 1
10:00 他走了.. 10:05 他又上线了.. 我想计算他不在的时间..
编辑:
status = 0 表示用户不在。 status = 1 表示他在线..
【问题讨论】:
-
你所说的“离开”和“回来”到底是什么意思?你的意思是说他在身体上离开了他的电脑/手机/平板电脑吗?他把目光从他的电脑/手机/平板电脑上移开看一会儿电视?或者他离开你的网站又回来了?或者从他的网络浏览器窗口切换?还有什么?
-
将记录写入数据库表是最简单的部分。任何教程都可以帮助您。但是您希望在这里回应哪些实际事件?您如何定义“离开”和“回来”这两个术语?
-
喜欢走开意味着..每个人的手机中都安装了一个应用程序..它会检测他们的位置..如果有人不在他们的位置上,它会更新状态,因为“离开”意味着 0表..当他们回到他们的位置时,它会更新状态,因为“在线”表示此表中的 1
-
在我看来,根据您上面的评论,您的数据库中还需要一些列。您有时间(这是当前时间),我认为您需要一个存储状态变为 0 的时间的列,一个在状态变为零时更新的时间戳列,然后是另一个告诉您时间差的列介于时间和新时间列之间。
-
那你需要做一个孤岛类型的查询。这方面有几十个例子。困难的部分有时只是知道要搜索什么。看看它,看看你能找到什么。
标签: asp.net sql-server database c#-4.0