「Redis 笔记」数据类型
Posted WANG!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「Redis 笔记」数据类型相关的知识,希望对你有一定的参考价值。
REmote DIctionary Server(Redis),一个 key-value 存储系统。
数据类型
Redis 支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
- string
- string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如 jpg 图片或者序列化的对象。
- string 类型是 Redis 最基本的数据类型,一个键最大能存储 512MB。
相关命令:
set
,get
127.0.0.1:6379> set str1 hello OK 127.0.0.1:6379> get str1 "hello"
- hash
- hash 是键值对的集合。
- 每个 hash 可以存储 2^32 - 1 个(超过 40 亿个)键值对。
相关命令:
hmset
,hmget
,hgetall
127.0.0.1:6379> hmset hashmap1 name hiwangzi blog hiwangzi.com OK 127.0.0.1:6379> hmget hashmap1 name 1) "hiwangzi" 127.0.0.1:6379> hgetall hashmap1 1) "name" 2) "hiwangzi" 3) "blog" 4) "hiwangzi.com"
- list
- list 是字符串列表,按插入顺序排序。
- 列表的最大长度为 2^32 - 1 个元素。
相关命令:
lpush
,lrange
127.0.0.1:6379> lpush list1 a b (integer) 2 127.0.0.1:6379> lrange list1 0 100 1) "b" 2) "a" 127.0.0.1:6379> lpush list1 c (integer) 3 127.0.0.1:6379> lrange list1 0 2 1) "c" 2) "b" 3) "a"
- set
- set 是字符串的无序集合。
- 添加,删除和验证成员是否存在的时间O(1)复杂性。
- set 的最大成员数量为 2^32 - 1 个元素。
相关命令:
sadd
,smembers
127.0.0.1:6379> sadd set1 a b (integer) 2 127.0.0.1:6379> smembers set1 1) "b" 2) "a" 127.0.0.1:6379> sadd set1 c (integer) 1 127.0.0.1:6379> smembers set1 1) "b" 2) "c" 3) "a" 127.0.0.1:6379> sadd set1 a (integer) 0 127.0.0.1:6379> smembers set1 1) "b" 2) "c" 3) "a" # a 被添加了两次,但集合有唯一属性,所以只会存储一个。
- zset
- zset = sorted set
- Redis可排序集合类似于Redis集合,是不重复的字符集合。 不同之处在于,排序集合的每个成员都与分数相关联,这个分数用于按最小分数到最大分数来排序的排序集合。虽然成员是唯一的,但分数值可以重复。
相关命令:
zadd
,zrangebyscore
redis 127.0.0.1:6379> zadd yiibaiset 0 redis (integer) 1 redis 127.0.0.1:6379> zadd yiibaiset 0 mongodb (integer) 1 redis 127.0.0.1:6379> zadd yiibaiset 1 sqlite (integer) 1 redis 127.0.0.1:6379> zadd yiibaiset 1 sqlite (integer) 0 redis 127.0.0.1:6379> ZRANGEBYSCORE yiibaiset 0 1000 1) "mongodb" 2) "redis" 3) "sqlite"
参考
以上是关于「Redis 笔记」数据类型的主要内容,如果未能解决你的问题,请参考以下文章