Redis Set操作

Redis Set操作

1、sAdd

向名称为key的set中添加元素value,如果value存在,不写入,return false

php 复制代码
$redis->sAdd(key , value);

2、sRem, sRemove

删除名称为key的set中的元素value

$redis->sAdd('key1' , 'set1');

$redis->sAdd('key1' , 'set2');

$redis->sAdd('key1' , 'set3');

$redis->sRem('key1', 'set2');

3、sMove

将value元素从名称为srckey的集合移到名称为dstkey的集合

$redis->sMove(seckey, dstkey, value);

4、sIsMember, sContains

名称为key的集合中查找是否有value元素,有ture 没有 false

$redis->sIsMember(key, value);

5、sCard, sSize

返回名称为key的set的元素个数

6、sPop

随机返回并删除名称为key的set中一个元素

7、sRandMember

随机返回名称为key的set中一个元素,不删除

8、sInter

求交集

9、sInterStore

求交集并将交集保存到output的集合

$redis->sInterStore('output', 'key1', 'key2', 'key3')

10、sUnion

求并集

$redis->sUnion('s0', 's1', 's2');

s0,s1,s2 同时求并集

11、sUnionStore

求并集并将并集保存到output的集合

$redis->sUnionStore('output', 'key1', 'key2', 'key3');

12、sDiff

求差集

13、sDiffStore

求差集并将差集保存到output的集合

14、sMembers, sGetMembers

返回名称为key的set的所有元素

15、sort

排序,分页等

参数

复制代码
'by' => 'some_pattern_*',
'limit' => array(0, 1),
'get' => 'some_other_pattern_*' or an array of patterns,
'sort' => 'asc' or 'desc',
'alpha' => TRUE,
'store' => 'external-key'

例子

复制代码
$redis->delete('s'); $redis->sadd('s', 5); $redis->sadd('s', 4); $redis->sadd('s', 2); $redis->sadd('s', 1); $redis->sadd('s', 3);
var_dump($redis->sort('s')); // 1,2,3,4,5
var_dump($redis->sort('s', array('sort' => 'desc'))); // 5,4,3,2,1
var_dump($redis->sort('s', array('sort' => 'desc', 'store' => 'out'))); // (int)5
相关推荐
言之。25 分钟前
Django REST Framework 中 @action 装饰器详解
数据库·sqlite
十八旬2 小时前
苍穹外卖项目实战(day7-1)-缓存菜品和缓存套餐功能-记录实战教程、问题的解决方法以及完整代码
java·数据库·spring boot·redis·缓存·spring cache
2301_781668613 小时前
Redis 面试
java·redis·面试
吐泡泡_3 小时前
Redis(缓存)
redis
要一起看日出3 小时前
MVCC-多版本并发控制
数据库·mysql·mvcc
Hx__3 小时前
MySQL InnoDB 的 MVCC 机制
数据库·mysql
速易达网络3 小时前
ASP.NET MVC 连接 MySQL 数据库查询示例
数据库·asp.net·mvc
无名客03 小时前
redis分布式锁为什么采用Lua脚本实现。而不是事务
redis·分布式·lua·事务
玉衡子4 小时前
MySQL基础架构全面解析
数据库·后端
梦中的天之酒壶4 小时前
Redis Stack扩展功能
数据库·redis·bootstrap