我们来看看Redis五大类型中的第四大类型:“集合类型”,集合类型还是蛮有意思的,先看redis手册,如下:
上面就是redis中的set类型使用到的所有方法,还是老话,常用的方法也就那么四个(CURD)。。。
一: 常用方法
1. SAdd
这个方法毫无疑问,就是向集合里面添加数据,比如下面这样,我往fruits集合里面添加喜爱的水果。
127.0.0.1:6379> sadd fruits apple (integer) 1 127.0.0.1:6379> sadd fruits banana (integer) 1 127.0.0.1:6379> smembers fruits 1) "banana" 2) "apple" 127.0.0.1:6379>
上面这个sadd你也看到了,我往集合里面成功添加了两个元素,现在你可能不满足这么简单的添加,你或许想知道set这个集合在redis底层是使用什么来实现的,你可以用object encoding查看一下便知:
127.0.0.1:6379> object encoding fruits "hashtable" 127.0.0.1:6379>
看到了吧,是hashtable这个,看下底层代码:
有没有看到dictAdd方法,而其中的第三个参数正好是Null。。。对应着*val形参,然后我再带你看看dictAdd方法的定义。
2. SPOP,SMEMBERS
既然元素进来了,总不能不出来吧,这里的第一个SPOP:移除并返回集合中的一个随机元素。
刚才随便插了一句话,下面我们继续SAdd,再SPop出来。
127.0.0.1:6379> sadd fruits pear (integer) 1 127.0.0.1:6379> sadd fruits grape (integer) 1 127.0.0.1:6379> sadd fruits chestnut (integer) 1 127.0.0.1:6379> smembers fruits 1) "grape" 2) "pear" 3) "banana" 4) "apple" 5) "chestnut" 127.0.0.1:6379> spop fruits "apple" 127.0.0.1:6379> spop fruits "chestnut" 127.0.0.1:6379> smembers fruits 1) "grape" 2) "pear" 3) "banana" 127.0.0.1:6379>
这个方法确实还是蛮好的,起码它是原子性操作,如果要我自己实现的话,起码还是要10行左右代码的。
3. SREM
既然说到了CURD,那怎么能少了D呢,它的功能定义就是:移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略,
下面我随便举个例子,删除fruits中的pear。
127.0.0.1:6379> smembers fruits 1) "grape" 2) "pear" 3) "banana" 127.0.0.1:6379> srem fruits pear (integer) 1 127.0.0.1:6379> smembers fruits 1) "grape" 2) "banana" 127.0.0.1:6379>
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月22日
2024年11月22日
- Parijat-BuddhaGarden《佛陀花园》[WAV+CUE]
- 证声音乐图书馆《巴莎诺瓦 惬意咖啡馆》[320K/MP3][220.56MB]
- 证声音乐图书馆《巴莎诺瓦 惬意咖啡馆》[FLAC/分轨][220.56MB]
- 群星《狂潮》夜店中文爆嗨重低音 黑胶碟2CD[低速原抓WAV+CUE]
- TraditionalMusicEnsembleofTheBNMA-BuddhistMusicoftheMingDynasty(JVC-Japan)[FLAC]
- [中国唱片]中央乐团交响乐队《绝烧HIFI典范》[WAV+CUE]
- 群星《2024好听新歌41》AI调整音效【WAV分轨】
- 张学友《吻别》MQA-UHQCD 日本压碟[原抓WAV+CUE][1G]
- 许嵩《寻宝游戏》[WAV+CUE][951M]
- 李玉刚《刚好遇见你》[WAV+CUE][970M]
- 罗文《国语精选》24K金碟限量版英皇娱乐[WAV+CUE][955M]
- 证声音乐图书馆《摇滚乐 海滩假期》[320K/MP3][50.75MB]
- 证声音乐图书馆《摇滚乐 海滩假期》[FLAC/分轨][273.06MB]
- 群星《情系民歌LP黑胶》2CD[WAV+CUE]
- 串烧歌曲《台语发烧热唱1国语发烧热唱2》2CD日版[WAV+CUE]