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中存储的数字加上指定增量

 

  

posted @ 2016-11-29 17:58  sellsa  阅读(154)  评论(0)    收藏  举报