首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在redis中跟踪员工工作时间的方法-什么是有用的?-什么不是?

在redis中跟踪员工工作时间的方法-什么是有用的?-什么不是?
EN

Stack Overflow用户
提问于 2016-03-02 23:29:00
回答 1查看 71关注 0票数 0

我正在设置一个简单的打卡系统,我希望能够跟踪用户打卡和打卡的时间,以及能够拉出日期1和日期2之间的工作小时数报告。

我的想法是,当他们登录时设置一个排序集,键是他们的名字,分数是他们登录时的时间戳,值将为空。然后,当他们注销时,我会将该值设置为注销时间的时间戳。然后我就可以根据分数提取报告了。这是否可行和/或是否有更好的方法来替代它?

编辑(来自注释):

使用排序集,您可以通过获取得分大于起始时间戳的所有记录来执行查询排序。

所以为了便于使用,假设用户的登录时间戳是50、100、150和200,你可以告诉redis给你时间戳大于100的记录的所有数据,它会返回最后两条记录。

它可以很容易地在mysql或其他数据库中完成,但我相信它也可以在redis中轻松完成。

对我来说,服务器资源至关重要,因此在mysql上使用redis是一个很大的优势。

EN

回答 1

Stack Overflow用户

发布于 2016-03-04 05:50:12

你当然可以记录打卡进出的时间。但你不能按小时做报告。您必须在客户端代码中通过拉取最后一次登录和最后一次注销并进行数学运算来计算这些值。当然,还可以处理错过登录或注销的情况。

你不是从Redis中“拉出报告”,而是存储和检索数据。有很多方法可以存储数据,但你的问题太宽泛了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35751457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档