文章目录

  • (一)Redis数据类型之string
  • (二)Redis数据类型之hash
  • (三)Redis数据类型之list
  • (四)Redis数据类型之set
  • (五)Redis数据类型之sorted set


(一)Redis数据类型之string

字符串类型是redis中最基本的数据类型,它能存储任何形式的内容,包含二进制数据,甚至是一张图片
一个字符串类型的值存储的最大容量是1GB,一般情况下我们存储的单条数据肯定是达不到的这个限值的
string类型比较适合存储类型单一的数据
针对string类型主要有下面这些常见命令:

命令  格式          解释
set   set key value  给key设置一个Value(字符串类型的)
get   get key        获取key的值
incr  incr key       对key的值递加+1(值必须是数字)
decr  decr key       对key的值递减-1(值必须是数字)
strlen strlen key    获取key值的长度

(二)Redis数据类型之hash

  • hash类型的值存储了字段和字段值的映射,字段和字段值只能是字符串,不支持其他数据类型
  • hash类型的值至多存储 2的32次方-1 个字段,一般情况下我们也达不到这个极限
  • hash类型比较适合存储对象,因为对象里面是有一些属性和值的,我们就可以把这些属性和值存储到这个hash类型里面
    针对hash类型主要有下面这些常见命令:
命令     格式      解释
hset     hset key field value  向hash中添加字段和值
hget     hget key field        获取hash中指定字段的值
hgetall  hgetall key           获取hash中所有的字段和值
hexists  hexists key field     判断hash中是否包含指定字段
hincrby  hincrby key field num 对hash中指定字段的值递增
hdel     hdel key field        删除hash中指定的字段
hkeys/hvals hkeys/hvals key    获取hash中所有字段或字段值
hlen     hlen key              获取hash中所有字段的数量

(三)Redis数据类型之list

list是一个有序的字符串列表,列表内部是使用双向链表(linked list)实现的
list列表类型的值最多可以存储 2的32次方-1 个元素,一般我们也达不到这个限值
list类型比较适合作为队列使用,使用lpush+rpop可以实现先进先出的队列

针对list类型主要有下面这些常见命令:

命令    格式     解释
lpush   lpush key value   从列表左侧添加元素
rpush   rpush key value   从列表右侧添加元素
lpop    lpop key          从列表左侧弹出元素
rpop    rpop key          从列表右侧弹出元素
llen    llen key          获取列表的长度
lrange  lrange key start stop 获取列表指定区间的元素
lindex  lindex key index  获取列表指定角标的元素
lset    lset key index value 修改列表中指定角标的元素

(四)Redis数据类型之set

  • set是一个集合
  • set集合中的元素都是不重复的,无序的
  • set集合类型的值最多可以存储 2的32次方-1个 元素
  • set集合比较适合用在去重的场景下,因为它里面的元素是都不重复的
    针对set类型主要有下面这些常见命令:
命令    格式    解释
sadd   sadd key value   向集合中添加元素
smembers smembers key   获取集合中所有元素
srem   srem key value   从集合中删除指定元素
sismember sismember key value 判断集合中是否包含指定元素
sdiff   diff key1 key2    获取两个集合的差集
sinter  sinter key1 key2  获取两个集合的交集
sunion  sunion key1 key2  获取两个集合的并集
scard   scard key        获取集合中元素的数量

(五)Redis数据类型之sorted set

  • 有序集合,在集合类型的基础上为集合中的每个元素都关联了一个分数,根据分数进行排序,这样就实现了有序。
  • sorted set比较适合用在获取TopN的场景,因为它里面的数据是有序的
    针对sorted set类型主要有下面这些常见命令:
命令    格式     解释
zadd    zadd key value    向集合中添加元素
zscore  zscore key value  获取集合中指定元素的分值
zrange  zrange key value  获取集合指定元素的排名(正序)
zrevrange 格式同上 获取集合指定元素的排名(倒序)
zincrby zincrby key num value 给集合中指定元素增加分值
zcard   zcard key       取集合中元素的数量
zrem    zrem key value  从集合中删除指定元素