Redis 数据类型

来源:互联网 发布:曲面细分算法 编辑:程序博客网 时间:2024/05/29 15:27

访问服务器:redis-cli.exe -h 127.0.0.1 -p 6379

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

string(字符串)
string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。
string类型是Redis最基本的数据类型,一个键最大能存储512MB。
设值:set key value
取值:get key
这里写图片描述
注意:一个键最大能存储512MB。

Hash(哈希)
Redis hash 是一个键值对集合。
Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。
设值:hmset key field value [field value …]
取值:获取属性值: hget key field
获取hash值:hgetall key
这里写图片描述
以上实例中 hash 数据类型存储了包含用户脚本信息的用户对象。每个 hash 可以存储 232 - 1 键值对(40多亿)。

List(列表)
Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。
设值:左边:lpush key value [value …]
右边:rpush key value [value …]
取值:lrange key start end
这里写图片描述
列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。

Set(集合)
Redis的Set是string类型的无序集合。
集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
设值:sadd key member [member …]
取值:smembers key
这里写图片描述
注意:sadd ccc 000加了两次,但第二次加入返回的是0,根据集合内元素的唯一性,第二次插入的元素将被忽略。
集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

zset(sorted set:有序集合)
Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
zset的成员是唯一的,但分数(score)却可以重复。

设值:zadd key [NX|XX] [CH] [INCR] score member [score member …]
取值:zrange key start stop [WITHSCORES]
zrangebyscore key min max [WITHSCORES] [LIMIT offset count]
这里写图片描述
这里写图片描述

0 0