redis set命令操作

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 1.添加一个或多个成员到set SADD key member [member ...] summary: Add one or more members to a set since: 1.0.0 127.0.0.1:6379> sadd set1 val1 val2 val3 (integer) 3 2.获取一个set的成员数量 SCARD key summary
1.添加一个或多个成员到set
SADD key member [member ...]
summary: Add one or more members to a set
since: 1.0.0
127.0.0.1:6379> sadd set1 val1 val2 val3
(integer) 3


2.获取一个set的成员数量
SCARD key
summary: Get the number of members in a set
since: 1.0.0
127.0.0.1:6379> scard set1
(integer) 3


3.查询在第一个set中但不在后续set中的成员,并返回
SDIFF key [key ...]
summary: Subtract multiple sets
since: 1.0.0
127.0.0.1:6379> SMEMBERS set1
1) "val3"
2) "val4"
3) "val5"
4) "val2"
5) "val1"
127.0.0.1:6379> SMEMBERS set2
1) "val3"
2) "val4"
3) "val2"
127.0.0.1:6379> SDIFF set2 set1
(empty list or set)
127.0.0.1:6379> SDIFF set1 set2
1) "val5"
2) "val1"


4.查询key1中的成员但不在key2等后续key中的成员,并将获得的结果放在des-key中
SDIFFSTORE des-key key1 [key2 ...]
summary: Subtract multiple sets and store the resulting set in a key
since: 1.0.0
127.0.0.1:6379> SDIFFSTORE set3 set1 set2
(integer) 2
127.0.0.1:6379> SMEMBERS set3
1) "val5"
2) "val1"


5.查询set中的重复项
SINTER key [key ...]
summary: Intersect multiple sets
since: 1.0.0
127.0.0.1:6379> sinter set1 set2
1) "val3"
2) "val4"
3) "val2"
127.0.0.1:6379> sinter set2 set1
1) "val3"
2) "val4"
3) "val2"


6.查询set中的重复项,并放在目标set中
SINTERSTORE des-key key [key ...]
summary: Intersect multiple sets and store the resulting set in a key
since: 1.0.0
127.0.0.1:6379> SINTERSTORE set4 set1 set2
(integer) 3
127.0.0.1:6379> SMEMBERS set4
1) "val3"
2) "val2"
3) "val4"


7.查询指定的成员是否在指定的key中(在返回1,不在返回0)
SISMEMBER key member
summary: Determine if a given value is a member of a set
since: 1.0.0


8.查询set中所有的成员
SMEMBERS key
summary: Get all the members in a set
since: 1.0.0
127.0.0.1:6379> SMEMBERS set4
1) "val3"
2) "val2"
3) "val4"


9.将set中的一个成员从set移到另一个set
SMOVE source destination member
summary: Move a member from one set to another
since: 1.0.0
127.0.0.1:6379> smove set4 set3 val3
(integer) 1
127.0.0.1:6379> SMEMBERS set4
1) "val2"
2) "val4"
127.0.0.1:6379> SMEMBERS set3
1) "val3"
2) "val5"
3) "val1"


10.移除并返回随机的成员
SPOP key
summary: Remove and return a random member from a set
since: 1.0.0
127.0.0.1:6379> SMEMBERS set3
1) "val3"
2) "val5"
3) "val1"
127.0.0.1:6379> spop set3
"val1"
127.0.0.1:6379> SMEMBERS set3
1) "val3"
2) "val5"


11.获取一个或多个随机成员(count指代获取的数目)
SRANDMEMBER key [count]
summary: Get one or multiple random members from a set
since: 1.0.0
127.0.0.1:6379> SRANDMEMBER set3 2
1) "val3"
2) "val5"


12.移除set中的一个或多个成员
SREM key member [member ...]
summary: Remove one or more members from a set
since: 1.0.0
127.0.0.1:6379> srem set3 val3 val4
(integer) 1  #只删除了val3,val4不存在所以返回1


13.添加多个sets,显示多个sets的结果,不重复
SUNION key [key ...]
summary: Add multiple sets
since: 1.0.0


127.0.0.1:6379> SUNION set3 set4 set1
1) "val3"
2) "val5"
3) "val4"
4) "val2"
5) "val1"


14.连接多个set结果,并将结果存在目标set中
SUNIONSTORE dest-key key [key ...]
summary: Add multiple sets and store the resulting set in a key
since: 1.0.0


127.0.0.1:6379> SUNIONstore  set6  set3 set4 set1
(integer) 5



相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
16天前
|
NoSQL Redis 数据库
Redis的全局命令及相关误区
Redis的全局命令及相关误区
22 0
|
24天前
|
NoSQL Redis 数据库
Redis中的常用命令有哪些?
Redis常用命令包括:PING测试连接,ECHO回显,SELECT切换数据库,QUIT关闭连接;KEYS查找key,EXISTS检查存在,DEL删除key,EXPIRE设置过期时间,TTL查看剩余生存时间,TYPE检测数据类型;STRING操作如SET/GET/MSET/MGET,INCR/DECR增减计数;HASH命令如HSET/HGET/HMSET/HMGET/HGETALL管理字段;LIST操作如LPUSH/RPUSH/LPOP/RPOP/LRANGE;
10 0
|
30天前
|
NoSQL Redis
Redis集群(六):集群常用命令及说明
Redis集群(六):集群常用命令及说明
187 0
|
2月前
|
缓存 NoSQL 数据处理
Redis事务悄然而至:命令的背后故事
Redis事务悄然而至:命令的背后故事
27 0
|
1月前
|
缓存 NoSQL Java
【Redis】5、Redis 的分布式锁、Lua 脚本保证 Redis 命令的原子性
【Redis】5、Redis 的分布式锁、Lua 脚本保证 Redis 命令的原子性
62 0
|
1天前
|
存储 缓存 NoSQL
Redis入门到通关之Hash命令
Redis入门到通关之Hash命令
|
1天前
|
存储 缓存 NoSQL
Redis入门到通关之String命令
Redis入门到通关之String命令
|
7天前
|
存储 NoSQL Java
Redis 命令
Redis 命令
144 0
|
18天前
|
NoSQL Redis 数据库
通过migrate命令实现两个redis实例之间的数据迁移
通过migrate命令实现两个redis实例之间的数据迁移
|
1月前
|
NoSQL Redis 索引
[Redis]——Redis命令手册set、list、sortedset
[Redis]——Redis命令手册set、list、sortedset

热门文章

最新文章