redis

来源:互联网 发布:打骚扰电话软件 编辑:程序博客网 时间:2024/06/06 17:58

Redis 字符串(String)

Redis 字符串数据类型的相关命令用于管理 redis 字符串值

String类型常用指令set key value
设置指定 key 的值
get key
获取指定 key 的值
strlen key
返回 key 所储存的字符串值的长度
incr key
将 key 中储存的数字值增一(自增长)
append key value
如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾










Redis 哈希(Hash)

         Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。

      redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)


hash类型常用指令hmset key value 
 设置指定key的值(values也是键值对 相等于 java的map对象) 
hget key field
 获取存储在哈希表中指定字段的值
hgetall key 
 获取在哈希表中指定 key 的所有字段和值
hdel key field2 [field2] 
 删除一个或多个哈希表字段
hkeys key
 获取指定哈希表中的字段
hlen key
 获取哈希表中字段的数量











Redis 列表(List)

  
        在Redis中,List类型是按照插入顺序排序的字符串链表。和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素在插入时,如果该键并不存在,Redis将为该键创建一个新的链表

        从元素插入和删除的效率视角来看,如果我们是在链表的两头插入或删除元素,这将会是非常高效的操作,即使链表中已经存储了百万条记录,该操作也可以在常量时间内完成。然而需要说明的是,如果元素插入或删除操作是作用于链表中间,那将会是非常低效的。相信对于有良好数据结构基础的开发者而言,这一点并不难理解。

一个列表最多可以包含 232- 1 个元素 (4294967295, 每个列表超过40亿个元素)


链表数据类型常用指令lpush key value
 把值插入到链表头部
rpush key value
 把值插入到链表尾部
lpop key
 返回并删除链表头部元素
rpop key
 返回并删除链表尾部元素
lrange key start stop 
 查询列表指定下标范围(start stop)内的元素()
lrem key count value     
 从链表中删除value值,(从查询到的第一个开始删起)删除指定的 count 个 value 后结束
        count > 0 从表头删除  count < 0 从表尾删除  count=0 全部删除
ltrim key start stop
 对一个列表进行修剪(trim),只保留列表指定下标区间(start stop (不包含stop))内的元素,不  在指定区间之内的元素都将被删除
lindex key index
 返回index索引上的值
llen key
 计算链表的元素个数





















Redis 集合(Set)

Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据

Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。



Set数据类型常用指令sadd key member1 [member2]   
 向集合添加一个或多个成员
srem key member1 [member2]
 删除集合中一个或多个成员
scard key
 获取集合的成员数(可以当成长度)
sdiffkey1 [key2]
 返回给定所有集合的差集
sunion key1 [key2]
 返回所有给定集合的并集
sinter key1 [key2]
 返回给定所有集合的交集
sismember key member 
 判断 member 元素是否是集合 key 的成员
smembers key
 返回集合中的所有成员

原创粉丝点击