redis02: Redis五种常用数据结构以及命令行操作

对于Redis中的数据,总体上是键值对,不同数据类型指的是键值对中值的类型值的类型.

关于key

命令 作用
DEL key 该命令用于在 key 存在时删除 key
EXISTS key 检查给定 key 是否存在
MOVE key db 将当前数据库的 key 移动到给定的数据库 db 当中
TYPE key 返回 key 所储存的值的类型
SET key value 设置一个kv键值对

1.String:Redis中最基本的类型,它是key对应的一个单一值。二进制安全,不必担心由于编码等问题导致二进制数据变化。所以redis的string可以包含任何数据,比如jpg图片或者序列化的对象。Redis中一个字符串值的最大容量是512M。

命令 作用
GET key 根据key得到值
STRLEN key 返回 key 所储存的字符串值的长度
INCR key 将 key 中储存的数字值自增1
INCRBY key increment 将 key 所储存的值加上给定的增量值(increment)
MSET KEY VALUE [KEY VALUE …] 一次性设置一组多个键值对
MGET KEY [KEY …] 一次性指定多个KEY,返回它们对应的值,没有值的KEY返回值是(nil)

2.List:Redis 列表是简单的字符串列表,按照插入顺序排序。可以添加一个元素到列表的头部(左边)或者尾部(右边)。说明它的底层是基于链表实现的,所以它操作时头尾效率高,中间效率低

命令 作用
LPUSH key value [value …] 从左边添加数据
RPUSH key value [value …] 从右边添加数据
LRANGE key start stop 根据索引打印list集合 (0 -1范围是全部数据)
LLEN key list集合的长度
LPOP key 移出并获取列表的第一个元素
RPOP key 移除列表的最后一个元素,返回值为移除的元素。
LINDEX key index 根据索引从集合中取值
LSET key index value 仅保留指定区间的数据,两边的数据被删除
LTRIM key start stop 仅保留指定区间的数据,两边的数据被删除

3.Set: Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)

命令 作用
SADD key member [member …] 向集合添加一个或多个成员(不可重复)
SCARD key 获取集合的成员个数
SMEMBERS key 查看set集合所有数据
SREM key member1 [member2] 移除集合中一个或多个成员
SUNION key1 [key2] 返回所有给定集合的并集

4.Hash:Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象,hash数据类型可以理解为java中的Map<String,String>

项目 Value
HSET key field value 添加数据
HGETALL key 查询一个key的所有数据
HGET key field 查询一个key对应field的数据
HKEYS key 获取所有哈希表中的字段
HLEN key 获取哈希表中字段的数量
HVALS key 获取哈希表中所有值
HEXISTS key field 判断一个key中是否存在指定的field
HDEL key field [field …] 删除一个key指定的field
HINCRBY key field increment 给一个key的某个field对应的value增加increment值
HSET key field value 只有在字段 field 不存在时,设置哈希表字段的值
  1. Zset: Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。
项目 Value
ZADD key score1 member1 [score2 member2] 向有序集合添加一个或多个成员,或者更新已存在成员的分数
ZRANGE key start stop [WITHSCORES] 在指定范围内返回数据
ZCOUNT key min max 计算在有序集合中指定区间分数的成员数
ZRANK key member 返回有序集合中指定成员的索引
ZCARD key 查询key对应的数据个数
ZREM key member [member …] 删除元素
ZINCRBY key increment member 给某个元素增加分数
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] 在分数的指定区间内返回数据

猜你喜欢

转载自blog.csdn.net/weixin_44080445/article/details/114108650