redis数据类型
1、String字符串类型(一个键最多存储512MB)
1》SET :设置key对应的值为value
语法: SET key value [EX second] [PX milliseconds] [NX|XX] EX second:设置键的过期时间 PX milliseconds:以毫秒为单位设置key的过期时间 NX:只有键不存在时候才可以设置成功 XX:只有key已经存在的时候才可以设置 set test16 'this is a test16' EX 100 set test17 'this is a test17' EX 100 NX set test17 'this is a test17' EX 120 XX SET testStr1 'this is a test' 注意:如果key存在,同名会产生覆盖
2》GET: 根据key找到对应的值
语法:GET key GET testStr1 注意: 如果key不存在,返回nil;如果key不是字符串,会报错
3》SETRANGE:相当于字符串替换的效果
语法: SETRANGE key offset value 127.0.0.1:6379> set testStr5 'hello world' OK 127.0.0.1:6379> SETRANGE testStr5 6 'heboan' (integer) 12 127.0.0.1:6379> GET testStr5 "hello heboan" 注意:如果设置的key原来的字符串长度要比偏移量小,就会以零字节(\x00)来填充 127.0.0.1:6379> EXISTS textStr6 (integer) 0 127.0.0.1:6379> SETRANGE testStr6 5 'heboan' (integer) 11 127.0.0.1:6379> GET testStr6 "\x00\x00\x00\x00\x00heboan"
4》GETRANGE:返回字符串的一部分
语法:GETRANGE key start end 127.0.0.1:6379> SET name 'heboan' OK 127.0.0.1:6379> GETRANGE name 0 2 "heb" 127.0.0.1:6379> GETRANGE name 0 -3 "hebo"
5》GETSET:设置指定key的值,并且返回旧的值
语法:GETSET key value 127.0.0.1:6379> GETSET name 'jerry' "heboan" 注意:当key不存在返回nil,如果key不是字符串,会报错
6》MSET:一次设置多个键值
语法:MSET key value [key value ...] 127.0.0.1:6379> MSET name "heboan" grender "F" OK
7》MGET:一次获取多个键值
127.0.0.1:6379> MGET name grender 1) "heboan" 2) "F"
8》STRLEN:获取key的字符串长度
语法:STRLEN key 127.0.0.1:6379> STRLEN name (integer) 6 注意:对于不存在key获取其长度返回0
9》SETNX:只有key不存在才能设置成功
语法:SEXNX key value 127.0.0.1:6379> EXISTS testStr7 (integer) 0 127.0.0.1:6379> SETNX testStr7 "linux" (integer) 1 127.0.0.1:6379> GET testStr7 "linux" 127.0.0.1:6379> SETNX testStr7 "windows" (integer) 0 127.0.0.1:6379> GET testStr7 "linux"
10》SETEX:设置键值,并设置过期时间
语法:SETEX key seconds value 127.0.0.1:6379> SETEX testStr8 60 "only 60s" OK 注意:如果对已存在的key设置,会产生覆盖
11》MSETNX:一次设置多个key-value对,只有所有的key都不存在的时候才会成功,否则一个都不会成功
语法:MSETNX key value [key value...]
12》PSETEX:以毫秒为单位设置key的生存周期
语法:PSETEX key milliseconds value
13》INCR:对key中存储的数字+1
语法:INCR key 127.0.0.1:6379> set number 1 OK 127.0.0.1:6379> INCR number (integer) 2 127.0.0.1:6379> INCR number (integer) 3 127.0.0.1:6379> GET number "3" 注意:如果key不存在,则会先初始化为0,再进行自增操作;如果key存储的不是数字,会报错
14》INCR BY:将key中存储的数字加上指定增量
每天进步一点,加油!
浙公网安备 33010602011771号