2.Redis数据类型(一)

String类型
基本

set key value [NX|XX] [GET] [EX seconds|PX milliseconds
|EXAT unix-time-seconds|PXAT unix-time-milliseconds|KEEPTTL]

EX seconds: 以秒为单位设置过期时间

PX milliseconds :以毫秒为单位设置过期时间

EXAT unix-time-seconds :设置以秒为单位的unix时间戳对应的时间为过期时间

PXAT unix-time-milliseconds:设置以毫秒为单位的unix时间戳对应的时间为过期时间

NX: 健不存在的时候设置键值

XX: 健存在的时候设置键值

KEEPTTL:保留设置前指定键的生存时间

GET: 返回指定键原本的值,若键不存在返回nil

127.0.0.1:6379> set k5 v5 nx
OK
127.0.0.1:6379> set k5 v5 nx
(nil)
127.0.0.1:6379> set k6 v6 xx
(nil)
127.0.0.1:6379> set k5 v5 xx
OK

设置k1的值,并获取k1之前的值。
127.0.0.1:6379> set k1 v1 
OK
127.0.0.1:6379> set k1 v777 get 
"v1"
127.0.0.1:6379> get k1
"v777"

设置过期时间
set k1 v1 ex 10  //过期时间10秒

127.0.0.1:6379> ttl k1
(integer) 5
127.0.0.1:6379> ttl k1
(integer) 3
127.0.0.1:6379> ttl k1
(integer) -2

//设置过期的时间戳

set k1 v1 exat 1722829089

KEEPTTL
第一次设置了过期时间,第二次设置的时候会被直接重置。
如果希望第二次只改变值,不修改过期时间,使用KEEPTTL。。


127.0.0.1:6379> set k1 v1 ex 30
OK
127.0.0.1:6379> ttl k1
(integer) 24
127.0.0.1:6379> set k1 v11
OK
127.0.0.1:6379> ttl k1
(integer) -1
127.0.0.1:6379> del k1
(integer) 1
127.0.0.1:6379> set k1 v1 ex 30
OK
127.0.0.1:6379> ttl k1
(integer) 26
127.0.0.1:6379> set k1 vwww keepttl
OK
127.0.0.1:6379> ttl k1
(integer) 9

同时设置/获取多个键值。

mset/mget
127.0.0.1:6379> mset k1 v1 k2 v2 k3 v3 
OK
127.0.0.1:6379> mget k1 k2  k3 
1) "v1"
2) "v2"
3) "v3"
127.0.0.1:6379> 

//  msetnx 会将后面的当作整体 k1存在了,所以不会成功。 
127.0.0.1:6379> msetnx k1 v122 k4 v444
(integer) 0
127.0.0.1:6379> get k1
"v1"
127.0.0.1:6379> get k4
(nil)


//k5 k6都不存在则成功
127.0.0.1:6379> msetnx k5 v5 k6 v6
(integer) 1
127.0.0.1:6379> mget k5 k6
1) "v5"
2) "v6"
GETRANGE/SETRANGE

索引从0开始。

GETRANGE  获取位于start和end两个索引之间的内容,左右都是闭区间。0,-1表示全部。

SETRANGE命令我们可以从索引index开始,用你想写入的value值替换掉给定键key所存储的字符串中的部分,这里只接受正数索引。

127.0.0.1:6379> set k1 adcd1234
OK
127.0.0.1:6379> GETRANGE k1 0 -1
"adcd1234"
127.0.0.1:6379> GETRANGE k1 0 3
"adcd"
127.0.0.1:6379> GETRANGE k1 0 0
"a"
127.0.0.1:6379> GETRANGE k1 0 1
"ad"


127.0.0.1:6379> SETRANGE k1 1 xx
(integer) 8

127.0.0.1:6379> get k1
"axxd1234"
INCR/DECR

127.0.0.1:6379> set k1 100
OK
127.0.0.1:6379> get k1
"100"
127.0.0.1:6379> INCR k1
(integer) 101
127.0.0.1:6379> INCR k1
(integer) 102
127.0.0.1:6379> INCR k1
(integer) 103
127.0.0.1:6379> INCR k1
(integer) 104
127.0.0.1:6379> INCRBY k1 3
(integer) 107

STRLEN/APPEND

STRLEN 获取字符串长度

APPEND 追加字符串

127.0.0.1:6379> set  k1 abcd
OK
127.0.0.1:6379> STRLEN k1
(integer) 4
127.0.0.1:6379> APPEND k1 UUwxdq
(integer) 10
127.0.0.1:6379> get k1
"abcdUUwxdq"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值