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
相关推荐
Python私教7 小时前
从表格到管理系统:别先写页面,先补齐权限、流程和审计
数据库·后端·架构
陈皮波比茶7 小时前
Redis学习
数据库·redis·学习
—Miss. Z—7 小时前
备份与恢复
数据库·oracle
ltl8 小时前
RocksDB Leveled Compaction:层级不变式与 CompactionPicker
数据库
ltl8 小时前
DuckDB 向量化与 Morsel-Driven Pipeline
数据库
NJCloud8 小时前
TiDB 集群部署与 MySQL 兼容性适配实战
linux·运维·数据库·mysql·tidb
喜欢打篮球的普通人8 小时前
LLVM Backend Lowering 从入门到实战:把 IR 变成机器码的完整链路
android·java·数据库
SomeOtherTime10 小时前
Postgresql触发器实现对表的日志审计
数据库·postgresql
这个DBA有点耶11 小时前
Oracle 迁移金仓兼容性评估指南:5 大维度深度拆解
数据库·oracle·架构