Strings类型
String是最简单的类型,一个Key对应一个Value,String类型是二进制安全的,可以包含任何数据,比如jpg图片或序列化的对象。
Strings类型的操作:
Set:设置Key对应的值为string类型的Value。如果多次对同一个Key进行Set操作,值会被覆盖。
如:
127.0.0.1:6379>set username anny
OK
127.0.0.1:6379>get username
"anny"
Setnx:设置Key对应的值为string类型的Value。如果Key已经存在,则返回数字0。nx表示"not exist"意思。
如:
127.0.0.1:6379>setnx username Mary
(integer)0
Setex:设置Key对应的值为string类型的Value,并指定此Key对应的有效期。
如设置Key=colour的有效期为10秒:
127.0.0.1:6379>setex colour 10 red
OK
127.0.0.1:6379>get colour
"red"
127.0.0.1:6379>get colour
(nil)
Setrange:设置指定Key的value值的子字符串。
如将邮箱abc@sohu.com替换成abc@163.com:
127.0.0.1:6379>set myemail abc@sohu.com
OK
127.0.0.1:6379>get myemail
"abc@sohu.com"
127.0.0.1:6379>setrange myemail 4 163.com
(integer)12
127.0.0.1:6379>get myemail
"abc@163.com"
mset:一次设置多个Key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置。
如:
127.0.0.1:6379>mset key1 Jack key2 Tom key3 Kitty
OK
127.0.0.1:6379>get key2
"Tom"
msetnx:一次设置多个Key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置,但是不会覆盖已经存在的Key.
127.0.0.1:6379>msetnx key4 Eric key2 Jerry
(integer)0
127.0.0.1:6379>get key4
(nil)
get:获取Key对应的string值,如果Key不存在返回nil。
getset:设置key的值,并返回key的旧值。
127.0.0.1:6379>getset key2 ABC "Tom"
127.0.0.1:6379>get key2 "ABC"
getrange:获取Key的Value值的子字符串。
127.0.0.1:6379>getrange myemail 0 2
"abc"
mget:一次获取多个key的值,如果对应key不存在则对应返回nil。
127.0.0.1:6379>mget key2 key5 key8
1)"ABC"
2)"Jerry"
3)(nil)
incr:对key的值做加加操作,步长为1,并返回新的值。
127.0.0.1:6379>set key6 30
OK
127.0.0.1:6379>get key6
"30"
127.0.0.1:6379>incr key6
(integer)31
incrby:同incr类似,加指定值(即在原值上增加多少),key不存在时会设置key,并认为原来的value是0。
127.0.0.1:6379>get key6
"31"
127.0.0.1:6379>incrby key6 8
(integer)39
127.0.0.1:6379>incrby key6 -8
(integer)31
decr:对key的值做减减操作,步长为1。
127.0.0.1:6379>decr key6
(integer)30
decrby:同decr类似,减指定值(即在原值上减少多少)。
127.0.0.1:6379>decrby key6 5
(integer)25
append:给指定key的字符串追加value,返回新字符串值的长度。
127.0.0.1:6379>get username
"anny"
127.0.0.1:6379>append username @gmail.com
(integer)14
127.0.0.1:6379>get username
"anny@gmail.com"
strlen:取指定key的value值的长度。
127.0.0.1:6379>strlen username
(integer)14