【项目实践】公寓租赁项目(八):SpringBoot与Redis整合的快速入门使用(2)

目录

1. set类型

概述:

常用命令

1.1 sadd

1.2 smembers

1.3 srem

1.4 spop

1.5 srandmember

1.6 scard

1.7 sismember

1.8 sinter

1.9 sunion

1.10 sdiff

应用场景:

2. hash类型

概述 :

常用命令

2.1 hset

2.2 hget

2.3 hdel

2.4 hlen

2.5 hexist

2.6 hkeys

2.7 hvals

2.8 hgetall

3. zset类型

概述:

常用命令

2.1 zadd

2.2 zcard

2.3 zscore

2.4 zrank/zreverank

2.5 zrem

2.6 zincrby

2.7 zrange

应用场景


1. set类型

概述:

和list类型相似,set类型也可用来存储多个string类型的元素,但与list类型不同,set中的元素是无序的,且set中不会包含相同元素。

常用命令
  • 集合内
1.1 sadd

向set里面添加元素。

语法:sadd key member [member ...]

1.2 smembers

用于查询set中的全部元素。

语法:smembers key

1.3 srem

用于移除set中的指定元素。

语法:srem key member [member ...]

1.4 spop

随机移除并返回set中的n个元素。

语法:spop key [count]

1.5 srandmember

命令随机返回set中的n个元素(不删除)。

语法:srandmember key [count]

1.6 scard

用于查询set中的元素个数。

语法:scard key

1.7 sismember

用于元素是否在set中。

语法:sismember key element


  • 集合间
1.8 sinter

用于计算多个集合的交集。

语法:sinter key [key ...]

1.9 sunion

用于计算多个集合的并集。

语法:sunion key [key ...]

1.10 sdiff

用于计算多个集合的差集。

语法:sdiff key [key ...]


应用场景:

set可用于计算共同关注好友,随机抽奖系统等等。


2. hash类型

概述

hash类型类似于Java语言中的HashMap,可用于存储键值对。

  • 常用命令
2.1 hset

用于向hash中增加键值对。

语法:hset key field value [field value ...]

2.2 hget

用于获取hash中某个键对应的值。

语法:hget key field

2.3 hdel

用于删除hash中的指定的键值对。

语法:hdel key field [field ...]

2.4 hlen

用于删除hash中的指定的键值对。

语法:hlen key

2.5 hexist

用于判断hash中的某个键是否存在。

语法:hexists key field

2.6 hkeys

用于返回hash中所有的键。

语法:hkeys key

2.7 hvals

用于返回hash中所有的值。

语法:hvals key

2.8 hgetall

用于返回hash中所有的键与值。

语法:hgetall key


3. zset类型

概述:

zset(sorted set)被称为有序集合,同set相似,zset中也不会包含相同元素,但不同的是,zset中的元素是有序的。并且zset中的元素并非像list一样按照元素的插入顺序排序,而是按照每个元素的分数(score)排序。

hash类型可用于缓存对象等。

常用命令
2.1 zadd

向zset中添加元素。

语法:ZADD key [NX|XX] score member

  • NX:仅当member不存在时才add

  • XX:仅当member存在时才add

2.2 zcard

用于计算zset中的元素个数。

语法:zcard key

2.3 zscore

查看某个元素的分数。

语法:zscore key member

2.4 zrank/zreverank

用于计算元素的排名,其中zrank按照score的升序排序,zrevrank则按照降序排序。并且名次从0开始。

语法:zrank/zrevrank key member

2.5 zrem

用于删除元素。

语法:zrem key member [member ...]

2.6 zincrby

用于增加元素的分数。

语法:zincrby key increment member

2.7 zrange

查询指定区间范围的元素。

语法:zrange key start stop [byscore] [rev] [limit offset count] [withscores]

  • start/stop:用于指定查询区间,但是在不同模式下,其代表的含义也不相同

    • 默认模式下,start~stop表示的是名次区间,且该区间为闭区间。名次从0开始,且可为负数,-1表示倒数第一,-2表示倒数第二,以此类推。

    • byscore模式下(声明了byscore参数),则start~stop表示的就是分数区间,该区间默认仍为闭区间。在该模式下,可以在startstop前增加(来表示开区间,例如(1 (5,表示的就是(1,5)这个开区间。除此之外,还可以使用-inf+inf表示负无穷和正无穷。

  • byscore:用于切换到分数模式

  • rev:表示降序排序。在byscore模式下使用rev参数需要注意查询区间,start大于stop

  • limit:该选项只用于byscore模式,作用和sql语句中的limit一致

  • withscores:用于打印分数


应用场景

zset主要用于各种排行榜。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值