redis命令

  redis不仅仅局限于提供快速的数据存储,此外还提供了大量的功能性操作,为了满足这些功能性操作,redis提供了五种数据存储类型和大量的操作命令。redis提供这五种不同类型的数据结构本质是为了提供相应的功能,不同的数据结构适用于不同的功能。

字符串类型

  这个是最常规的数据类型,对于一些整数和浮点数redis还提供了自增,自减的操作。

命令 语法 说明 复杂度
SET SET key value [EX seconds] [PX milliseconds] [NX|XX]

将字符串值 value 关联到 key 。

O(1)
SETNX SETNX key value 将 key 的值设为 value ,当且仅当 key 不存在。 O(1)
SETEX SETEX key seconds value 将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位)。 O(1)
SETRANGE SETRANGE key offset value 用 value 参数覆写(overwrite)给定 key 所储存的字符串值,从偏移量 offset 开始。 O(M)
SETBIT SETBIT key offset value 对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。 O(1)
GET GET key 返回 key 所关联的字符串值。 如果 key 不存在那么返回特殊值 nil 。 O(1)
GETBIT GETBIT key offset 对 key 所储存的字符串值,获取指定偏移量上的位(bit)。 O(1)
GETRANGE GETRANGE key start end 返回 key 中字符串值的子字符串,字符串的截取范围由 start 和 end 两个偏移量决定(包括 start 和 end 在内)。 O(N)
GETSET GETSET key value 将给定 key 的值设为 value ,并返回 key 的旧值(old value)。 O(1)
INCR INCR key 将 key 中储存的数字值增一。 O(1)
INCRBY INCRBY key increment 将 key 所储存的值加上增量 increment 。 O(1)
INCRBYFLOAT INCRBYFLOAT key increment 为 key 中所储存的值加上浮点数增量 increment 。 O(1)
MGET MGET key [key ...] 返回所有(一个或多个)给定 key 的值。 O(N)
MSET MSET key value [key value ...] 同时设置一个或多个 key-value 对。 O(N)
       
       
       
       
       

列表类型

  链表种的每个节点都是一个字符串类型,redis提供了对这个链表的插入,删除等操作。

集合类型

  集合类型和链表类型的区别是,集合类型是要值唯一,且没有顺序的,redis提供了对集合类型的存取和判断等操作。

哈希类型

  存储健值对的无序散列表。

命令 语法 说明 复杂度
HDEL HDEL key field [field ...] 删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。 O(N)
HSET HSET key field value 将哈希表 key 中的域 field 的值设为 value 。 O(1)
HSETNX HSETNX key field value 将哈希表 key 中的域 field 的值设置为 value ,当且仅当域 field 不存在。 若域 field 已经存在,该操作无效。 O(1)
HGET HGET key field 返回哈希表 key 中给定域 field 的值。 O(1)
HGETALL HGETALL key 返回哈希表 key 中,所有的域和值。 O(N)
HEXISTS HEXISTS key field

查看哈希表 key 中,给定域 field 是否存在。

如果哈希表含有给定域,返回 1 。

如果哈希表不含有给定域,或 key 不存在,返回 0 。
O(1)
HINCRBY HINCRBY key field increment 为哈希表 key 中的域 field 的值加上增量 increment 。

增量也可以为负数,相当于对给定域进行减法操作。

O(1) 
HINCRBYFLOAT HINCRBYFLOAT key field increment  为哈希表 key 中的域 field 加上浮点数增量 increment 。  O(1)  
HKEYS HKEYS key 返回哈希表 key 中的所有域。 O(N)
HLEN HLEN key 返回哈希表 key 中域的数量。 O(1) 
HMGET HMGET key field [field ...]

返回哈希表 key 中,一个或多个给定域的值。

如果给定的域不存在于哈希表,那么返回一个 nil 值。

O(N)
HMSET HMSET key field value [field value ...] 同时将多个 field-value (域-值)对设置到哈希表 key 中。 O(N)
HVALS HVALS key 返回哈希表 key 中所有域的值。 O(N)
HSCAN HSCAN key cursor [MATCH pattern] [COUNT count]    

有序集合

  字符串成员与浮点数分值之间有序映射,元素的排列顺序由分值大小决定。

原文地址:https://www.cnblogs.com/zhangwanhua/p/7010927.html