redis的五种数据类型

Posted

tags:

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

redis的五种数据类型

redis客户端建立

./redis-cli -h 192.168.1.22 -p 6380 --raw

1.String

技术分享图片

应用场景:

统计网站访问数量、当前在线人数、微博数、粉丝数等,全局递增ID等 。

常用命令:

SET key value

GET key

MSET key1 value1 [key2 value2]

MGET key1 key2

INCR key

DECR key

SETNX key value  #只有key 不存在时,才设置key的值

2.Hash

技术分享图片

应用场景

保存用户的详细信息。用ID作为key,value则用一组field-value的形式保存。

常用命令 (H)

HSET key field value

HGET key field

HGETALL key

HMSET key field1 value1 [field2 value2]

HMGET key field1 [filed2]

3.List

技术分享图片  

应用场景

获取最新的评论列表,获取最后登录10个用户,获取最近7天的活跃用户数等。

常用命令(L/R)

LPUSH key value1 [value2]  #将一个或多个值插入到列表头部

LPOP key #移出并获取列表的第一个元素

RPUSH key value1 [value2] #在列表尾部添加一个或多个值

RPOP key #移除并获取列表最后一个元素

LREM key count value #移除列表元素

LRANGE key start stop #获取列表指定范围内的元素

4.Set

技术分享图片

技术分享图片

应用场景

a.利用唯一性,可以存取当天的活跃用户列表。

b.利用集合操作,可以取不同兴趣圈子的交集,可以取当天的新增用户等。

常用命令(S)

SADD key member1 [member2] #向集合添加一个或多个成员

SDIFF key1 [key2] #返回给定所有集合的差集

SINTER key1 [key2] #返回给定所有集合的交集

SUNION key1 [key2] #返回所有给定集合的并集

SISMEMBER key member    #判断 member 元素是否是集合 key 的成员

SMEMBERS key    #返回集合中的所有成员

SREM key member1 [member2]   # 移除集合中一个或多个成员

5.Sorted Set

技术分享图片

技术分享图片

应用场景

销量排名,积分排名,时间线等

常用命令

ZADD key score1 member1 [score2 member2]    #向有序集合添加一个或多个成员,或者更新已存在成员的分数
ZINCRBY key increment member    #有序集合中对指定成员的分数加上增量 increment
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT]    #通过分数范围返回有序集合指定区间内的成员
ZINTERSTORE destination numkeys key [key …]    #计算给定的一个或多个有序集的交集,并将结果集存储在新的有序集合 key 中
ZUNIONSTORE destination numkeys key [key …]    #计算给定的一个或多个有序集的并集,并存储在新的 key 中

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

Redis NOSQL Redis的五种常见的数据类型 redis持久化方式 Jedis

带你整理面试过程中关于 Redis 的五种数据类型

轻松搞定高并发:详解Redis的五种数据类型及应用场景分析!

轻松搞定高并发:详解Redis的五种数据类型及应用场景分析!

Redis的五种对象类型及其底层实现

c# 操作Redis的五种基本类型总结