Redis 概述

【Redis】概述以及启动Redis并进入Redis

五大数据类型

1.String(字符串)

【Redis】五大数据类型之String

2.List(列表)

【Redis】五大数据类型之List

3.Set(集合)

【Redis】五大数据类型之Set

4.Hash(哈希)

【Redis】五大数据类型之Hash

5.Zset(有序集合)

在set的基础上,增加了一个值:set k1 v1 zset k1 score1 v1 命令是z开头

添加(zadd) 遍历查看(zrange

redis 查看ip Redis 查看zset_redis


redis 查看ip Redis 查看zset_redis 查看ip_02

127.0.0.1:6379> zadd myset 1 one # 添加一个值
(integer) 1
127.0.0.1:6379> zadd myset 2 two
(integer) 1
127.0.0.1:6379> zadd myset 3 three 4 four # 添加多个值
(integer) 2
127.0.0.1:6379> zrange myset 0 -1
1) "one"
2) "two"
3) "three"
4) "four"
排序 zrangebyxx

redis 查看ip Redis 查看zset_有序集合_03


redis 查看ip Redis 查看zset_Redis_04

127.0.0.1:6379> zadd salary 2500 xiaohong  # 添加三个用户
(integer) 1
127.0.0.1:6379> zadd salary 5000 zhangsan
(integer) 1
127.0.0.1:6379> zadd salary 500 wanzi
(integer) 1
# zrangebyscore key min max
127.0.0.1:6379> zrangebyscore salary -inf +inf  # 显示全部的用户,从小到大!
1) "wanzi"
2) "xiaohong"
3) "zhangsan"
127.0.0.1:6379> zrevrange salary 0 -1  # 从大到进行排序!
1) "zhangsan"
2) "kaungshen"
127.0.0.1:6379> zrangebyscore salary -inf +inf withscores # 显示全部的用户并且附带成绩
1) "wanzi"
2) "500"
3) "xiaohong"
4) "2500"
5) "zhangsan"
6) "5000"
127.0.0.1:6379> zrangebyscore salary -inf 2500 withscores # 显示工资小于2500员工的升序排序!
1) "wanzi"
2) "500"
3) "xiaohong"
4) "2500"
移除元素 zrem

redis 查看ip Redis 查看zset_redis_05

127.0.0.1:6379> zrange salary 0 -1
1) "wanzi"
2) "xiaohong"
3) "zhangsan"
127.0.0.1:6379> zrem salary xiaohong # 移除有序集合中的指定元素
(integer) 1
127.0.0.1:6379> zrange salary 0 -1
1) "wanzi"
2) "zhangsan"
127.0.0.1:6379> zcard salary # 获取有序集合中的个数
(integer) 2
获取指定区间的成员数量 zcount

redis 查看ip Redis 查看zset_有序集合_06

127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> zadd myset 1 hello 2 world 3 wanzi 
(integer) 3
127.0.0.1:6379> zcount myset 1 2 # 获取指定区间的成员数量
(integer) 2
127.0.0.1:6379> zcount myset 1 3
(integer) 3

其余的一些API,通过我们的学习吗,剩下的如果工作中有需要,可以去查查看官方文档!

redis 查看ip Redis 查看zset_有序集合_07


redis 查看ip Redis 查看zset_有序集合_08

案例思路:

  • set排序 👉存储班级成绩表👉工资表排序。
  • 带权重进行判断:普通消息👉1;重要消息 👉2;
  • 有序集合:排行榜应用实现👉取Top N 测试!