Redis 数据类型

Posted Chinda

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis 数据类型相关的知识,希望对你有一定的参考价值。

Redis的五大数据类型:

String(字符串):

String 是Redis最基本的数据类型,一个key对应一个value。String 类型是二进制安全的,可以包含任何数据。比如jpg图片或者序列化对象。字符串的value最多可以是512M。

Hash(哈希):

Hash 是一个键值对集合,是String类型的field和value的映射表,特别适合存储对象。类似于java中的Map<String, Object>。

List(列表):

List 是一个简单的字符串列表,按照插入的顺序排列。可以添加一个元素到列表的头部(左边)或者尾部(右边)。它的底层实际是一个链表。

Set(集合):

Set是String类型元素的无序集合。他是通过HashTable实现的。

ZSet(有序集合):

ZSet 和 Set 一样也是String类型元素的集合,且不允许重复的元素。不同的是每一个元素都会关联一个double类型的分数。Redis正是通过分数来为集合中的元素进行从小到大的排序。注意:ZSet 中元素是唯一的,但分数却可以重复。

Redis常见的操作命令:

redis默认有16个数据库,类似数组下标从0开始,初始默认使用0号库。

select [number]:切换数据库,例: select 7, 切换到8号库。

dbsize:查看当前数据的key的数量。

flushdb:清空当前数据库。

flushall:清空全部数据库。

数据类型常见操作命令:

redis键(key):

  • keys *:数据库中存在key的数量。常用语法:keys *, keys [string],keys [string]?,keys [string]* 等。
  • exists [key]:判断key是否存在。
  • move [key] [db]:将key值移动到另外db。
  • expire [key]:为key设置过期时间。
  • ttl [key]:查看key还有多少时间过期,-1表示永不过期,-2表示已过期。
  • type [key]:查看key的类型。

Redis字符串(String):

  • set/get/del/append/strlen:设置/获取/删除/增加/长度。
  • incr/decr/incrby/decrby:加1/减1/加?/键?。
  • getrange/setrange:范围获取/范围设置。
  • setex/sexnx:SETEX key seconds value 将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位)。如果 key 已经存在, SETEX 命令将覆写旧值/SETNX key value key 的值设为 value ,当且仅当 key 不存在。
  • mset/mget/msetnx:MSET key value [key value ...]同时设置一个或多个 key-value 对/MGET key [key ...]返回所有(一个或多个)给定 key 的值/MSETNX key value [key value ...]同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。
  • getset:GETSET key value 将给定 key 的值设为 value ,并返回 key 的旧值(old value)。当 key 存在但不是字符串类型时,返回一个错误。

 

未完待续。。。。。

 

 

api文档

 

以上是关于Redis 数据类型的主要内容,如果未能解决你的问题,请参考以下文章

redis数据类型和应用场景

Redis的各数据类型的内存占用

redis数据类型是啥?

Redis5数据类型6-Stream

redis基本数据类型

redis支持的数据类型都有哪些