字符串:
set key value
将字符串key关联到value里面 如果key持有其他值则覆盖 返回结果 (在redis2.6.12版本之前set命令返回总是ok) 返回值:成功返回ok 失败返回null (EX seconds 将键的过期时间设置为 seconds
秒
setnx key seconds value
在键key不存在的情况下,设置value ,生成时间为seconds秒 如果存在不做操作. 返回值:成功返回1 失败返回0
setex key seconds value
将key值设置为value,生存时间为seconds秒 如果存在则覆盖 . 返回值:成功返回ok 错误返回error信息.(这条命令和set命令,expier key scends设置生存时间相似,其不同之处在于setex是原子操作可以设置值并设置过期时间同一时间完成)
psetex key millseconds value
和setex命令相似区别在于设置的事毫秒值
get key
获取字符串的key的值 返回值: 成功返回字符串 失败返回nil
getset key value
将key的值设置为value,并返回key未被设置之前的值 返回值:成功key的旧值 如果key没有旧值的时候,也就是说之前key不存在则返回nil .如果key存在不是字符串时返回错误信息
strlen key
返回key的字符串长度 返回值:成功integer 如果key不存在返回0 ,key不是字符串时返回一个错误信息
append key value
如果key存在且为字符串追加到末尾,不存在设置key值为value. 返回值:追加后的key值的长度.
setrange key offset value
从偏移量开始覆盖指定长度的字符串.如果不存在当做空白字符串处理 返回值:被修改后的字符长度
getrange key start end
截取key的字符串,从偏移量start开始到end结束(包括start和end (-1表示最后一个,-2倒数第二个))
incr key
为key存储的数值加一.
如果key不存在,那么它的值会先被初始化为0. 如果key的值不能被转为数字则返回一条错误信息(64位有符号数字) 返回值 成功返回ok
incrby key increment
为key存储的数值加增量increment . 如果key不存在,会被初始化为0,后在增加increment. 如果key的值不能被转化为数字则返回一条错误信息 返回值 成功返回ok
incrbyfloat key increment
为key存储的数值增加浮点的increment (情况同上) 返回值 返回增加后的浮点数
desc key
为key存储的数字值减一(情况同上) 返回值 成功返回 ok
descby key increment
将key存储的数字减去increment (情况同上) 返回值 成功返回ok
mset key value key value.....
同时为多个键值设置 . 如果某个给定的键已经存在则覆盖 如果不想覆盖可以使用 msetnx (操作具有原子性) 返回值:无论什么情况总是ok(msetnx如果有不覆盖的值 会失败 返回 0 成功返回1)
mget key
返回一个或多个字符串返回键的值.如果某个key不存在则返回nil
哈希表:
hset hash field value
将hash中的域field值设置为value,如果hash中的值不存在则创建个新的并执行hash .如果存在覆盖旧值.返回值:不存在设置返回1 覆盖返回0
hsetnx hash field value
域field存在不执行,不存在设置value. 返回值 不存在:1 存在返回0
hget hash field
返回hash给定的域值,如果不存在返回nil
hexists hash field
检测给定的域值field是否存在于hash表中 存在返回1 不存在返回0
hdel key field field2.....
删除哈希表key中一个和多个指定的域,不存在的域将被忽略 返回值:被成功移除的数量,不包含被忽略的域
hlen key
返回哈希表key中域的数量 当key不存在是返回0
hstrlen key field
返回哈希表key中给定的域的相关的字符串长度. key不存在返回0
hincrby key field increment
为哈希key的域值field增加增量increment 增量可以为负数相当于减法, 如果key不存在新建,如果field不存在初始化0 .返回值: 返回增量后的值
hincrbyfloat key field increment
(浮点数操作同上) 返回值:增量后的值
hmset key field value field value .....
同时将多个field value值设置到哈希表key中,此命令会覆盖哈希表中存在的域. 返回值:成功ok 失败返回个错误.
hmget key field field.....
返回哈希表中key的多个域值 如果某个域值不存在则返回nil 返回值:一个或多个给定域的关联值的表.
hkeys key
返回哈希表key中所有的域 当key不存在时返回一个空表
hvals key
返回哈希表key中所有的域值 当key不存在时返回一个空表
hgetall key
返回哈希表key中所有的域和值 当key不存在时返回一个空表
hscan key cursor pattern count
哈希分页
列表
lpush key value value....
将一个或多个value的值插入到列表key的表头,多个value的值依次从左到右插入到表头.比如:给空表头mylist执行 lpush mylist a b c .列表的值将会是c b a .这等同于原子性的执行. key不存在创建,存在不是列表类型则返回一个错误信息. 返回值:返回执行列表后的长度
lpushx key value
将vlaue插入到key的表头,key必须存在且是一个列表 .如果不存在lpushx 什么命令都不做 返回值:返回插入之后列表的长度.
rpush key value value....
将一个或多个value插入key的表尾(从左到右插入到最右边)比如一个空的列表mylist 执行rpush mylist abc 列表值会是 a b c 返回值和错误信息同上
rpushx key value
将value插入到key的表尾 key必须存在且是一个列表 .如果不存在lpushx 什么命令都不做 返回值:返回插入之后列表的长度.
lpop key
移除并返回列表key的头元素,列表key不存在时返回nil
rpop key
移除并返回列表key的尾元素,列表key不存在事返回nil