Redis基础教程第7节 - Set

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介:

Set类型是一个没有排序的集合,可以在该类型那个执行添加、删除或判断某一元素是否存在等操作。由于Redis的内部是使用值为空的hash table实现的,所以操作的时间复杂度为O(1), 最多存储2^32-1个字符串。


Set集合中不允许出现重复的元素,和List类型相比,Set类型在功能上另一个优势是可以进行并集,交集,差集运算。


sadd

1
2
3
4
129.223.248.154:6379> sadd students tim
(integer) 1
129.223.248.154:6379> sadd students tim ben
(integer) 1


srem

1
2
3
4
129.223.248.154:6379> srem student tim
(integer) 0
129.223.248.154:6379> srem students tim
(integer) 1


smembers、sismember

1
2
3
4
5
6
129.223.248.154:6379> smembers students
1)  "ben"
129.223.248.154:6379> sismember students ben
(integer) 1
129.223.248.154:6379> sismember students tim
(integer) 0


sdiff 差集

1
2
3
4
5
6
7
8
129.223.248.154:6379> sadd setDiffA 1 2 3
(integer) 3
129.223.248.154:6379> sadd setDiffB 2 3 4
(integer) 3
129.223.248.154:6379> 
sdiff 
setDiffA setDiffB
1)  "1"


sinter 交集

1
2
3
4
5
6
7
8
9
129.223.248.154:6379> sadd setInterA 1 2 3
(integer) 3
129.223.248.154:6379> sadd setInterB 2 3 4
(integer) 3
129.223.248.154:6379> 
sinter 
setInterA setInterB
1)  "2"
2)  "3"


sunion 并集

1
2
3
4
5
6
7
8
9
10
11
12
129.223.248.154:6379> sadd setUnionA 1 2 3
(integer) 3
129.223.248.154:6379> sadd setUnionB 2 4 6
(integer) 3
129.223.248.154:6379> 
sunion 
setUnionA setUnionB
1)  "1"
2)  "2"
3)  "3"
4)  "4"
5)  "6"


scard 集合总数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
129.223.248.154:6379> 
scard 
students
(integer) 1
129.223.248.154:6379> smembers students
1)  "ben"
129.223.248.154:6379> srandmember students
"ben"
129.223.248.154:6379> sadd students mike
(integer) 1
129.223.248.154:6379> srandmember students
"ben"
129.223.248.154:6379> srandmember students
"mike"
129.223.248.154:6379> srandmember students
"mike"
129.223.248.154:6379> sadd memebrs a b c
(integer) 3
129.223.248.154:6379> srandmember students 2
1)  "ben"
2)  "mike"


srandmember

1
2
3
4
5
6
7
129.223.248.154:6379> sadd letters a b c
(integer) 3
129.223.248.154:6379> 
srandmember 
letters 2
1)  "b"
2)  "c"


spop

1
2
3
4
5
6
129.223.248.154:6379> spop letters
"b"
129.223.248.154:6379> smembers letters
1)  "a"
2)  "c"
129.223.248.154:6379>










本文转自 yuanzhitang 51CTO博客,原文链接:http://blog.51cto.com/yuanzhitang/1789613,如需转载请自行联系原作者
相关实践学习
基于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
目录
相关文章
|
3天前
|
SQL NoSQL Java
Redis数据类型 Hash Set Zset Bitmap HyperLogLog GEO
Redis数据类型 Hash Set Zset Bitmap HyperLogLog GEO
13 0
|
16天前
|
存储 NoSQL Redis
Redis入门到通关之Redis数据结构-Set篇
Redis入门到通关之Redis数据结构-Set篇
20 1
|
16天前
|
存储 NoSQL Redis
Redis入门到通关之Set实现点赞功能
Redis入门到通关之Set实现点赞功能
15 0
|
16天前
|
存储 缓存 NoSQL
Redis入门到通关之Set命令
Redis入门到通关之Set命令
18 0
|
1月前
|
存储 NoSQL 调度
Redis的有序集合(Sorted Set)详解
Redis的有序集合(Sorted Set)详解
|
2月前
|
NoSQL Redis 索引
[Redis]——Redis命令手册set、list、sortedset
[Redis]——Redis命令手册set、list、sortedset
|
2月前
|
存储 安全 Java
Python教程第3章 | 集合(List列表、Tuple元组、Dict字典、Set)
Python 列表、无序列表、字典、元组增删改查基本用法和注意事项
51 1
|
2月前
|
存储 NoSQL Java
【Redis】1、学习 Redis 的五大基本数据类型【String、Hash、List、Set、SortedSet】
【Redis】1、学习 Redis 的五大基本数据类型【String、Hash、List、Set、SortedSet】
57 0
|
4月前
|
存储 NoSQL 关系型数据库
Redis Sorted Set 底层实现原理深度解读与排行榜实战
Redis Sorted Set 底层实现原理深度解读与排行榜实战
64 0
|
4月前
|
存储 NoSQL 关系型数据库
Redis Set 用了 2 种数据结构来存储,到现在才知道
Redis Set 用了 2 种数据结构来存储,到现在才知道
40 0