Redis-数据类型分析

来源:互联网 发布:麦课网络通识学院 编辑:程序博客网 时间:2024/06/03 16:08

Redis是支持五种数据类型

字符串

首先字符串是一种字节序列。Redis中的字符串是二进制安全的,他们的长度不因为任何特殊的终止字符决定。可以在一个字符串中存储高达512兆字节的任何内容。

示例

redis 127.0.0.1:6379> set name "admin" OK redis 127.0.0.1:6379> get name "admin"

散列/哈希

Redis散列/哈希(Hashes)是键值对的集合
(类似Java中的HashMap)
。Redis散列/哈希(Hashes)是字符串与字符串之间的映射。
redis 127.0.0.1:6379> HMSET mapname key value                                                                              
其中mapname 类似Map 的名称,key 存入的键,value 存入的值。其中有hgetall 获取一个Map,Map中的键不允许重复。


列表
Redis列表只是字符串列表,按照插入顺序排序,可以从头部插入数据,尾部插入数据。

redis 127.0.0.1:6379> lpush user cao(integer) 1 redis 127.0.0.1:6379> lpush user luo(integer) 2 redis 127.0.0.1:6379> lpush user zhao(integer) 3 redis 127.0.0.1:6379> lrange user 0 10  1) "cao" 2) "luo" 3) "zhao"
其中 lpush 是从头部插入数据,rpush从尾部插入数据。lrange 0 -1 是查询所有列表中的数据。


集合
Redis集合是字符串的无序集合,在redis中你可以删除,添加成员。

示例

redis 127.0.0.1:6379> sadd lg py(integer) 1 redis 127.0.0.1:6379> sadd lg java(integer) 1 redis 127.0.0.1:6379> sadd lg go(integer) 1 redis 127.0.0.1:6379> sadd lg go (integer) 0 redis 127.0.0.1:6379> smembers lg1) "go" 2) "java" 3) "py"
其中集合也不存在键相同的情况


可排序集合
Redis可排序集合类似于集合,其中相同键的元素会被覆盖掉,但是可以根据字段排序进行。
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"





0 0
原创粉丝点击