从零学习reids2

一.String类型

1.string类型也就是字符串类型,是redis中最简单的存储类型。其中value是字符春,不过根据字符串的格式不同,又可以分为三种类类型:

I:String类型普通字符春

II:Int整数类型:浮点类型,可以做自增,自减操作

III:float浮点类型,可以做自增,自减操作

不管是那种格式,底层都是字节数组形式储存,只不过编码方式不同,字符串类型的最大空间不超过512M

2.String的常见命令:

  1. SET: set key value 新增或者修改
  2. GET: 取get key
  3. MSET:批量添加key value
  4. MGET:批量获取
  5. INCR:让一个整型的int+1
  6. INCRBY 步长 key
  7. DECR key 自减
  8. INCRBYFLOAT:让一个浮点类型的数字自增
  9. SETNX :setnx key 新增功能 如果key存在才执行,否则不执行
  10. SETEX:setex key value time 设置一个key value加上有效期

二.key的层级格式:

因为redis中不存在Table.所以使用多喝单词形成层级结构。

例:项目名:业务名:类型:id

三:HASH类型

Hash类型,也叫散列,其value是一个无序字典,类似于Java中的hashmap

  1. HSET key field value:添加或者修改hash类型key的field的值
  2. HGET key field 获取一个hash类型的key 的field的值
  3. HMSET:批量添加多个
  4. HMGET:批量获取多个hash类型的filed的值
  5. HGETALL:获取一个hash类型的key所有filed的值
  6. HKEYS:获取一个hash类型的key中的所有的files
  7. HVALS:获取一个hash类型的key中的所有的值
  8. HNCERBY:让一个hash类型key的字段值自增并指定步长
  9. HSETNX:添加一个hash类型的key的field值前提是这个file不存在

四:List类型

与java中linkedList类似,可以看做是一个双向链表结构。即支持正向反向检索

特征:有序,元素可以重复,插入和删除快,查询速度一般

  1. LPUSH key element..:想列表左侧插入一个或多个元素
  2. LPOP key 移除并返回列表左侧的第一个元素,没有则返回Nil
  3. ROUSH key element..:向列表右侧插入一个或多个元素
  4. RPOP key :移除并返回列表右侧的第一个元素
  5. LRANGE key star end:返回一段角标范围内的所有元素
  6. BLOP和BRPOP:与LPOP和RPOP类似,只不过在没有元素时等待指定时间而不是直接返回Nil

五.SET类型

与java中的HashSet类似。可以看作value为null的HashMap.因为也是一个hash表

特征:无需,元素不可重复,查找快,支持交集,并集,差集等功能

  1. SADD key member...:向set中添加一个或多个元素
  2. SREM key member:移除Set中指定元素
  3. SCARD key:返回st中元素的个数
  4. SISMEMBER KEY member:判断一个元素是否在于Set中
  5. :SMEMBER:获取set中所有的元素
  6. SINTER key1 key2 ..:求key1与key2的交集
  7. SDIFF key1 key2..:求key1与key2的差集
  8. SUNION key1 key2:求key1与key2的并集

六:SortedSet类型

是一个可排序的set集合。与java中的treeset相似,但是底层结构差的很大

sortedSet底层是跳表加hash表,每个元素都带有一个score属性

具备下列特性:,

可排序,元素不可重复,查询速度快。常用于实现排行榜

1ZADD key score1 member1 [score2 member2]
向有序集合添加一个或多个成员,或者更新已存在成员的分数
2ZCARD key
获取有序集合的成员数
3ZCOUNT key min max
计算在有序集合中指定区间分数的成员数
4ZINCRBY key increment member
有序集合中对指定成员的分数加上增量 increment
5ZINTERSTORE destination numkeys key [key ...]
计算给定的一个或多个有序集的交集并将结果集存储在新的有序集合 destination 中
6ZLEXCOUNT key min max
在有序集合中计算指定字典区间内成员数量
7ZRANGE key start stop [WITHSCORES]
通过索引区间返回有序集合指定区间内的成员
8ZRANGEBYLEX key min max [LIMIT offset count]
通过字典区间返回有序集合的成员
9ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]
通过分数返回有序集合指定区间内的成员
10ZRANK key member
返回有序集合中指定成员的索引
11ZREM key member [member ...]
移除有序集合中的一个或多个成员
12ZREMRANGEBYLEX key min max
移除有序集合中给定的字典区间的所有成员
13ZREMRANGEBYRANK key start stop
移除有序集合中给定的排名区间的所有成员
14ZREMRANGEBYSCORE key min max
移除有序集合中给定的分数区间的所有成员
15ZREVRANGE key start stop [WITHSCORES]
返回有序集中指定区间内的成员,通过索引,分数从高到低
16ZREVRANGEBYSCORE key max min [WITHSCORES]
返回有序集中指定分数区间内的成员,分数从高到低排序
17ZREVRANK key member
返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序
18ZSCORE key member
返回有序集中,成员的分数值
19ZUNIONSTORE destination numkeys key [key ...]
计算给定的一个或多个有序集的并集,并存储在新的 key 中
20ZSCAN key cursor [MATCH pattern] [COUNT count]
迭代有序集合中的元素(包括元素成员和元素分值)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值