redis的基本命令

字符串:

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

posted @ 2019-11-07 17:17  TheSummer  阅读(114)  评论(0编辑  收藏  举报