243-Redis(list,set,hash,zset)

列表(list)

底层 是双向循环链表
在Redis中,我们可以把list完成栈、队列、阻塞队列
所有的list命令都是用 l 开头的
lpush rpush lrange
从list的左边或者右边插入值,格式: lpush(从左边) key value rpush(从右边) key value
lrange获取指定范围的值,格式: lrange key start stop
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

lpop rpop
从列表的左边或者右边移除值,格式: lpop key rpop key
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
lindex
获取指定下标的值,格式: lindex key index
在这里插入图片描述
在这里插入图片描述
llen
获取列表中的元素个数,格式: llen key
在这里插入图片描述

在这里插入图片描述
lrem
移除列表中的元素,格式: lrem key count value
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
ltrim
截取列表的值,格式: ltrim key start stop
在这里插入图片描述
在这里插入图片描述
rpoplpush
移除列表中最后一个元素,将它添加到另一个列表中,格式: rpoplpush key1 key2
在这里插入图片描述
在这里插入图片描述
lset
根据下标替换列表中的值,格式: lset key index value
在这里插入图片描述
在这里插入图片描述
linsert
在列表中插入值,格式: linsert key before|after value new_value
在这里插入图片描述
在这里插入图片描述
小结
他实际上是一个链表,before or after, left,right都可以插入值
如果key不存在,创建新的链表
如果key存在,新增内容
如果移除了所有的值,空链表,也代表不存在
在两遍插入或者改动值,效率最高!中间元素,相对来说效率会低一点
队列: LPOP RPUSH
栈: LPOP LPUSH

集合 set

set中的值是不能重复的!!!
sadd
给set中添加值,格式: sadd key value1 value2 …
在这里插入图片描述

smembers
获取set中的所有值,格式: smembers key

在这里插入图片描述
在这里插入图片描述

sismember
判断某个值是否在set中,格式: sismember key value
在这里插入图片描述
在这里插入图片描述

scard
获取set中元素的个数,格式: scard key
在这里插入图片描述
在这里插入图片描述
srem
删除set中的值,格式: srem key value1 value2…
在这里插入图片描述
srandmember
从set中获取随机值,格式: srandmember key count
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们可以用它去完成抽奖!!!

spop
随机删除指定个数个元素,格式: spop key count
在这里插入图片描述
在这里插入图片描述
smove
将指定的元素从一个set中移动到另一个set中,格式: smove set1 set2 value
在这里插入图片描述
数字集合类:
差集
交集
并集

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

应用
抖音中,A用户将所有关注的人放在一个set集合中,将他的粉丝放在一个集合中。
可以实现共同关注,共同爱好,二度好友(推荐好友)等。
在这里插入图片描述

哈希 hash

可以将哈希看成是一个Map集合,key-value中的value是一个map集合
hset hget
设置或者获取一个hash的值,格式: hset key field1 value1 hget key field
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

hmset hmget
设置或者获取hash的值,格式: hmset key field1 value1 field2 value2 … hmget key field1
field2…
在这里插入图片描述
getall
获取hash中的所有值
在这里插入图片描述
在这里插入图片描述
hdel
删除指定field的hash键值对,格式: hdel key field
在这里插入图片描述
在这里插入图片描述
hlen
获取hash的键值对的个数,格式: hlen key
在这里插入图片描述
在这里插入图片描述
hexists
判断hash中的字段是否存在,格式: hexists key field
在这里插入图片描述
在这里插入图片描述
hkeys hvals
获取hash中所有的字段或者值,格式: hkeys key hvals
在这里插入图片描述
在这里插入图片描述
hincrby
给hash中指定字段的值加上一个增量
在这里插入图片描述
在这里插入图片描述
hsetnx
如果不存在,则添加,如果存在,则失败,格式: hsetnx key field value
在这里插入图片描述
在这里插入图片描述
应用:hash中存储经常变更的值:比如用户信息: user : name-value,age-value,sex-value
hash更适合对象的存储,String更加适合字符串存储

有序集合 zset

zadd
添加一个值,格式: zadd key scores value
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

zrange
获取zset中一个范围的值,格式: zrange key start stop
在这里插入图片描述
zrangebyscore
将zset中的值按照score从小到大排序输出,格式: zrangebyscore key min max
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
zrem
移除zset中指定的元素,格式: zrem key value
在这里插入图片描述
zcard
查看zset中的元素个数,格式: zcard key
在这里插入图片描述
zcount
根据score的值统计在给定区间的元素个数,格式: zcount key min max
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林林林ZEYU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值