IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> day39 redis 数据类型 Set集合、SortedSet有序集合 -> 正文阅读

[大数据]day39 redis 数据类型 Set集合、SortedSet有序集合


I know, i know
地球另一端有你陪我




四、Set 集合

	无序的、去重的
	元素是字符串类型
	最多包含2^32-1元素

1、增

增加一个或多个元素

	SADD key member [member ...]		如果元素已经存在,则自动忽略

2、删

1、移除一个或者多个元素

	SREM key member [member ...]		元素不存在,自动忽略

2、随机从集合中移除并返回这个被移除的元素

	SPOP key

3、把元素从源集合移动到目标集合

	SMOVE source destination member

	smove fgh newfgh 1

3、查

1、返回集合包含的所有元素
(如果集合元素过多,如百万个,需要遍历,可能会造成服务器阻塞,生产环境应避免使用)

	SMEMBERS key

2、检查给定元素是否存在于集合中

	SISMEMBER key member

3、随机返回集合中指定个数的值

	SRANDMEMBER key [count]
	1、如果 count 为正数,且小于集合基数,
	   那么命令返回一个包含 count 个元素的数组,数组中的元素不重复
	2、如果 count 大于等于集合基数,那么返回整个集合
	3、如果 count 为负数,那么命令返回一个数组,
       数组中的元素可能会重复出现多次,而数组的长度为 count 的绝对值

4、返回集合中元素的个数

	SCARD key

4、集合操作

1、差集

	SDIFF key [key ...]		
	从第一个key的集合中去除其他集合和自己的交集部分
	
	SDIFFSTORE destination key [key ...]		
	将差集结果存储在目标key中

	sdiffstore newfgh fgh1 fgh2

2、交集

	SINTER key [key ...]
	取所有集合交集部分

	SINTERSTORE destination key [key ...]
	将交集结果存储在目标key中

	sinterstore newfgh fgh1 fgh2

3、并集

	SUNION key [key ...]
	取所有集合并集
	
	SUNIONSTORE destination key [key ...]
	将并集结果存储在目标key中

	sunionstore newfgh fgh1 fgh2

4.1 应用场景

共同关注、共同好友


五、SortedSet 有序集合

	类似Set集合
	有序的、去重的
	元素是字符串类型
	每一个元素都关联着一个浮点数分值(Score),
	并按照分值从小到大的顺序排列集合中的元素,分值可以相同
	最多包含2^32-1元素

1、增

增加一个或多个元素

	ZADD key score member [score member ...]
	如果元素已经存在,则使用新的score

2、删

1、移除指定一个或者多个元素

	ZREM key member [member ...]
	元素不存在,自动忽略

2、移除指定索引范围的元素

	ZREMRANGEBYRANK key start stop

3、移除指定分值范围的元素

	ZREMRANGEBYSCORE key min max

3、改

增加或者减少分值

	ZINCRBY key increment member
	increment为负数就是减少

	zincrby fgh -5 a

4、查

1、显示分值

	ZSCORE key member

2、返回元素的排名(索引)

	ZRANK key member

3、返回元素的逆序排名

	ZREVRANK key member

4、返回指定索引区间元素

	ZRANGE key start stop

	zrange fgh -2 -1
	取最后两个元素

5、返回逆序后指定索引区间元素

	ZREVRANGE key start stop

	zrevrange fgh -2 -1
	返回逆序后,最后个元素

6、返回指定分值区间元素

	ZRANGEBYSCORE key min max

	zrangebyscore fgh -inf +inf
	-inf和+inf表示负无穷和正无穷

7、返回逆序后指定指定分值区间元素

	ZREVRANGEBYSCORE key max min
	
	zrevrangebyscore fgh 3 2
	返回逆序后,score 范围内的元素

8、返回集合中元素个数

	ZCARD key

9、返回指定分值范围中元素的个数

	ZCOUNT key min max

5、集合操作

1、并集

	ZUNIONSTORE destination numkeys key [key ...] 
	[WEIGHTS weight] [AGGREGATE SUM|MIN|MAX]

	ZADD scores1 70 tom 80 peter 60 john
	ZADD scores2 90 peter 60 ben
	ZUNIONSTORE scores-all 2 scores1 scores2
	ZUNIONSTORE scores-all1 2 scores1 scores2 AGGREGATE SUM
	ZUNIONSTORE scores-all2 2 scores1 scores2 WEIGHTS 1 0.5 AGGREGATE SUM
	表一 x 1 + 表二 x 0.5
	numkeys 指定 key 的数量,必须
	WEIGHTS 选项,与前面设定的 key 对应,对应 key 中每一个 score 都要乘以这个权重
	AGGREGATE 选项,指定并集结果的聚合方式,默认是 SUM
	SUM:将所有集合中某一个元素的 score 值之和作为结果集中该成员的score值
	MIN:将所有集合中某一个元素的 score 值中最小值作为结果集中该成员的score值
	MAX:将所有集合中某一个元素的 score 值中最大值作为结果集中该成员的score值
	这里的 SUM、MIN、MAX 严格区分大小写

2、交集

	ZINTERSTORE destination numkeys key [key ...]
	[WEIGHTS weight] [AGGREGATE SUM|MIN|MAX]

同上

5、应用场景

热点新闻、歌曲点击量

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-11-16 18:54:27  更:2021-11-16 18:56:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 5:49:02-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码