Redis字符串(String)

眉间皱痕 提交于 2021-01-13 15:26:53

Redis字符串(String)

单值单value

1. 基本方法 set/get/del/append/strlen

append: 追加

strlen    : 求长度

127.0.0.1:9736> set k4 v3
OK
127.0.0.1:9736> get k4
"v3"
127.0.0.1:9736> append k4 55555
(integer) 7
127.0.0.1:9736> strlen k4
(integer) 7
127.0.0.1:9736> get k4
"v355555"
127.0.0.1:9736> del k4
(integer) 1
127.0.0.1:9736> keys *
1) "k2"
2) "k3"
127.0.0.1:9736> 

2. incr/decr/incrby/decrby 

一定要是数字才能进行加减

incr key  : 加1

decr key : 减1

incrby key num :  根据num递增

decrby key num:  根据num 递减

127.0.0.1:9736> get k4
"2"
127.0.0.1:9736> incr k4
(integer) 3
127.0.0.1:9736> get k4
"3"
127.0.0.1:9736> decr k4
(integer) 2
127.0.0.1:9736> get k4
"2"
127.0.0.1:9736> INCRBY k4 2
(integer) 4
127.0.0.1:9736> get k4
"4"
127.0.0.1:9736> DECRBY k4 3
(integer) 1
127.0.0.1:9736> get k4
"1"
127.0.0.1:9736> 

3. getrange/setrange

范围内取值,范围内赋值

getrange:获取指定区间范围内的值,类似between.....and 的关系,从零到负一标识全部

setrange:设置指定区间范围内的值,格式是setrange key 位置 具体值

127.0.0.1:9736> set k5 123456
OK
127.0.0.1:9736> get k5
"123456"
127.0.0.1:9736> GETRANGE k5 0 3
"1234"
127.0.0.1:9736> SETRANGE k5 4 55555
(integer) 9
127.0.0.1:9736> get k5
"123455555"
127.0.0.1:9736> getrange k5 0 -1
"123455555"
127.0.0.1:9736> SETRANGE k5 0 xxx
(integer) 9
127.0.0.1:9736> get k5
"xxx455555"

4. setex(set with expire) 键秒值/setnx(set if not exist)

setex 设置值的同时设置过期时间

setnx 如果值不存在,则设置,如果存在,不设置不覆盖。

127.0.0.1:9736> SETEX k6 5 5
OK
127.0.0.1:9736> ttl k6
(integer) 2
127.0.0.1:9736> ttl k6
(integer) -2
127.0.0.1:9736> keys *
1) "k2"
2) "k4"
3) "k5"
4) "k3"
127.0.0.1:9736> 
127.0.0.1:9736> setnx k6 v666
(integer) 1
127.0.0.1:9736> get k6
"v666"
127.0.0.1:9736> 

5. mset/mget/msetnx

mset 批量设置

mget 批量获取

msetnx 批量设置不存在的key

127.0.0.1:9736> mset k1 v1 k2 v2 k3 v3
OK
127.0.0.1:9736> mget k1 k2 k3
1) "v1"
2) "v2"
3) "v3"
127.0.0.1:9736> MSETNX k3 v33 k4 v4 k5 v5
(integer) 0
127.0.0.1:9736> mget k3 k4 k5
1) "v3"
2) "1"
3) "xxx455555"
127.0.0.1:9736> 

6. getset(先get再set)

getset(先get再set)

127.0.0.1:9736> getset k6 v5
"v666"
127.0.0.1:9736> get k6
"v5"
127.0.0.1:9736> 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!