当前位置:网站首页>Redis 做签到统计
Redis 做签到统计
2022-08-01 19:49:00 【Mar丶流年】
前言
像签到这种只有两种状态(是或否)的,可以使用二值状态统计。bitmap 符合二值状态统计(0,1),且占用空间小
统计某个月份内的签到情况
这里以用户id:1,8月份为例,假设1,3,5,7,9 签到
setbit sign:1:202208 1 1
setbit sign:1:202208 3 1
setbit sign:1:202208 5 1
setbit sign:1:202208 7 1
setbit sign:1:202208 9 1
统计当前月份签到天数
# 得到签到5天
bitcount sign:1:202208
查看当前月份某天是否签到
# 3号已签到
getbit sign:202208 3
# 4号未签到
getbit sign:202208 4
统计连续签到
统计连续签到就不太适合以用户id + 月份作为key了。
这里以具体签到天数作为key,以bit位置作为用户id。
假设20220801,用户1,3,5,7,9 签到。
setbit sing:20220801 1 1
setbit sing:20220801 3 1
setbit sing:20220801 5 1
setbit sing:20220801 7 1
setbit sing:20220801 9 1
20220802,用户3,7,9 签到
setbit sing:20220802 3 1
setbit sing:20220802 7 1
setbit sing:20220802 9 1
20220803,用户5,9 签到
setbit sing:20220803 5 1
setbit sing:20220803 9 1
统计 8月1,2,3 号都登录了的用户数量
# 将三个日期的bit 按位与结果 放入 result中
bitop and result sing:20220801 sing:20220802 sing:20220803
# 统计连续签到情况
# 得到连续签到的只有一个用户
bitcount result
边栏推荐
- Creo5.0 rough hexagon is how to draw
- Greenplum数据库源码分析——Standby Master操作工具分析
- kingbaseV8R3和postgreSQL哪个版本最接近?
- C语言实现-直接插入排序(带图详解)
- 第58章 结构、纪录与类
- regular expression
- 升哲科技携全域数字化方案亮相2022全球数字经济大会
- Choosing the right DevOps tool starts with understanding DevOps
- 密码学的基础:X.690和对应的BER CER DER编码
- 如何记录分析你的炼丹流程—可视化神器Wandb使用笔记【1】
猜你喜欢
随机推荐
58:第五章:开发admin管理服务:11:开发【管理员人脸登录,接口】;(未实测)(使用了阿里AI人脸识别)(演示了,使用RestTemplate实现接口调用接口;)
【Redis】缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存击穿、缓存降级
因斯布鲁克大学团队量子计算硬件突破了二进制
【1374. 生成每种字符都是奇数个的字符串】
不要再使用MySQL online DDL了
第56章 业务逻辑之物流/配送实体定义
Win11如何开启剪贴板自动复制?Win11开启剪贴板自动复制的方法
app直播源码,点击搜索栏自动弹出下拉框
使用常见问题解答软件的好处有哪些?
Write code anytime, anywhere -- deploy your own cloud development environment based on Code-server
win10,在proe/creo中鼠标中键不能放大缩小
工作5年,测试用例都设计不好?来看看大神的用例设计总结
数值矩阵的图形表示
百度无人驾驶商业化已“上路”
对于web性能优化我有话说!
我的驾照考试笔记(2)
DAO开发教程【WEB3.0】
DAO development tutorial [WEB3.0]
有点奇怪!访问目的网址,主机能容器却不行
How to query database configuration parameters in GBase 8c, such as datestyle.What function or syntax to use?








