首页 > 其他 > 详细

Redis sscan命令

时间:2021-04-15 15:15:37      阅读:15      评论:0      收藏:0      [点我收藏+]

在redis中对于一个集合类,也就是除了string以外的list hash set zset这些集合类,如果里面的元素很多,此时调用del key命令就可能会阻塞很长时间

一个解决办法是多次删除,每次只删一部分。那么怎么才能多次删除呢?这里以set为例

1 先调用sscan方法,扫描出来

sadd setkeymxz a01 a02 a03 a04 a05 a05 b02 b03 b04 b05
 sscan setkeymxz 0 MATCH a* COUNT 2
2
a02

我第一次尝试这个命令的时候,也很迷糊,怎么就返回一个a02呢,我的count是2啊。其实redis对于该命令作用顺序是先执行count,再从结果集中找模式匹配的解决

例如,先找出来四个结果,再从结果中匹配时a开头的

> sscan setkeymxz 0 MATCH a* count 4
6
a02
a03
> sscan setkeymxz 0  count 4
6
b02
a02
b04
a03

2 然后调用 SREM setkeymxz  a01 a02 多个成员用空格隔开

Redis sscan命令

原文:https://www.cnblogs.com/juniorMa/p/14661580.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!