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  阅读(126)  评论(0)    收藏  举报