Redisエントリ文字列(String)


≪インスタンス|Instance|emdw≫
redis 127.0.0.1:6379> SET runoobkey redis
OK
redis 127.0.0.1:6379> GET runoobkey
"redis"

1.Redis Getrangeコマンドは、指定したkeyに格納された文字列のサブ文字列を取得するために使用されます.文字列の切り取り範囲はstartとendの2つのオフセットによって決定されます(startとendを含む).
戻り値
切り取ったサブ文字列.
≪インスタンス|Instance|emdw≫
まずmykeyの値を設定し、文字列を切り取ります.
redis 127.0.0.1:6379> SET mykey "This is my test key"
OK
redis 127.0.0.1:6379> GETRANGE mykey 0 3
"This"
redis 127.0.0.1:6379> GETRANGE mykey 0 -1
"This is my test key"

2.Redis Getsetコマンドは、指定したkeyの値を設定し、keyの古い値を返します.
戻り値
指定したkeyの古い値を返します.キーに古い値がない場合、キーが存在しない場合はnilを返します.
keyが存在するが文字列タイプではない場合、エラーが返されます.
≪インスタンス|Instance|emdw≫
まずmykeyの値を設定し、文字列を切り取ります.
redis> GETSET db mongodb    #     ,   nil
(nil)

redis> GET db
"mongodb"

redis> GETSET db redis      #      mongodb
"mongodb"

redis> GET db
"redis"

3.Redis Getbitコマンドは、keyに格納された文字列値に対して、指定されたオフセット量のビット(bit)を取得するために使用されます.
戻り値
文字列値はオフセット量のビット(bit)を指定します.
オフセット量OFFSETが文字列値よりも長い場合、またはkeyが存在しない場合、0を返します.
≪インスタンス|Instance|emdw≫
#       key        offset    GETBIT,    0

redis> EXISTS bit
(integer) 0

redis> GETBIT bit 10086
(integer) 0


#       offset    GETBIT

redis> SETBIT bit 10086 1
(integer) 0

redis> GETBIT bit 10086
(integer) 1

4.Redis Mgetコマンドは、所与のkeyのすべての値を返します.与えられたキーの中にキーが存在しない場合、このキーは特殊な値nilを返します.
戻り値
与えられたkeyのすべての値を含むリスト.
≪インスタンス|Instance|emdw≫
redis 127.0.0.1:6379> SET key1 "hello"
OK
redis 127.0.0.1:6379> SET key2 "world"
OK
redis 127.0.0.1:6379> MGET key1 key2 someOtherKey
1) "Hello"
2) "World"
3) (nil)

5、Redis Setbitコマンドは、keyに格納された文字列値に対して、指定されたオフセット量のビット(bit)を設定または消去するために使用されます.
戻り値
オフセット量が元に格納されていたビットを指定します.
≪インスタンス|Instance|emdw≫
redis> SETBIT bit 10086 1
(integer) 0

redis> GETBIT bit 10086
(integer) 1

redis> GETBIT bit 100   # bit         0
(integer) 0

6、Redis Setexコマンドは指定したkeyに値と期限を設定します.キーが既に存在する場合、SETEXコマンドは古い値を置き換えます.
戻り値
設定が成功するとOKに戻ります.
≪インスタンス|Instance|emdw≫
redis 127.0.0.1:6379> SETEX mykey 60 redis
OK
redis 127.0.0.1:6379> TTL mykey
60
redis 127.0.0.1:6379> GET mykey
"redis

7、Redis Setnx(SET if Not eXists)コマンド指定したキーが存在しない場合、キーに指定した値を設定します.
戻り値
設定に成功し、1を返します.設定に失敗し、0を返します.
≪インスタンス|Instance|emdw≫
redis> EXISTS job                # job    
(integer) 0

redis> SETNX job "programmer"    # job     
(integer) 1

redis> SETNX job "code-farmer"   #      job ,  
(integer) 0

redis> GET job                   #      
"programmer"

8、Redis Setrangeコマンドは指定した文字列で所与のkeyに格納された文字列値を上書きし、上書きの位置はオフセットoffsetから始まる.
戻り値
変更された文字列の長さ.
≪インスタンス|Instance|emdw≫
redis 127.0.0.1:6379> SET key1 "Hello World"
OK
redis 127.0.0.1:6379> SETRANGE key1 6 "Redis"
(integer) 11
redis 127.0.0.1:6379> GET key1
"Hello Redis"

9.Redis Strlenコマンドは、指定したkeyに格納された文字列値の長さを取得するために使用されます.keyが文字列値ではない場合、エラーが返されます.
戻り値
文字列値の長さ.キーが存在しない場合は、0を返します.
≪インスタンス|Instance|emdw≫
#         

redis> SET mykey "Hello world"
OK

redis> STRLEN mykey
(integer) 11


#      key     0

redis> STRLEN nonexisting
(integer) 0

10.Redis Msetコマンドは、1つまたは複数のkey-valueペアを同時に設定するために使用されます.
戻り値
いつもOKを返します.
≪インスタンス|Instance|emdw≫
redis 127.0.0.1:6379> MSET key1 "Hello" key2 "World"
OK
redis 127.0.0.1:6379> GET key1
"Hello"
redis 127.0.0.1:6379> GET key2
1) "World"

11、Redis Msetnxコマンドは、所与のkeyがすべて存在しない場合に、1つ以上のkey-valueペアを同時に設定するために使用されます.
戻り値
すべてのkeyが正常に設定された場合、1を返します.与えられたすべてのキーが設定に失敗した場合(少なくとも1つのキーがすでに存在する場合)、0を返します.
≪インスタンス|Instance|emdw≫
#       key    MSETNX

redis> MSETNX rmdbs "MySQL" nosql "MongoDB" key-value-store "redis"
(integer) 1

redis> MGET rmdbs nosql key-value-store
1) "MySQL"
2) "MongoDB"
3) "redis"


# MSET     key         key

redis> MSETNX rmdbs "Sqlite" language "python"  # rmdbs      ,    
(integer) 0

redis> EXISTS language                          #    MSET       ,language      
(integer) 0

redis> GET rmdbs                                # rmdbs       
"MySQL"

12.Redis Psetexコマンドは、keyの生存時間をミリ秒単位で設定します.
戻り値
設定が成功するとOKに戻ります.
≪インスタンス|Instance|emdw≫
redis 127.0.0.1:6379> PSETEX mykey 1000 "Hello"
OK
redis 127.0.0.1:6379> PTTL mykey
999
redis 127.0.0.1:6379> GET mykey
1) "Hello"

13.Redis Incrコマンドは、keyに格納されている数値を1つ増やす.
キーが存在しない場合、キーの値はまず0に初期化され、INCR操作が実行されます.
値にエラーのタイプが含まれている場合、または文字列タイプの値が数値として表示されない場合は、エラーが返されます.
本操作の値は64ビット(bit)符号付き数字表示に制限されます.
戻り値
INCRコマンドを実行した後のkeyの値.
≪インスタンス|Instance|emdw≫
redis> SET page_view 20
OK

redis> INCR page_view
(integer) 21

redis> GET page_view    #      Redis           
"21"

14.Redis Incrbyコマンドは、keyに格納されている数字に指定した増分値を加算します.
キーが存在しない場合は、キーの値を0に初期化してからINCRBYコマンドを実行します.
値にエラーのタイプが含まれている場合、または文字列タイプの値が数値として表示されない場合は、エラーが返されます.
本操作の値は64ビット(bit)符号付き数字表示に制限されます.
戻り値
指定したインクリメンタル値を加算した後、keyの値.
≪インスタンス|Instance|emdw≫
# key        

redis> SET rank 50
OK

redis> INCRBY rank 20
(integer) 70

redis> GET rank
"70"


# key     

redis> EXISTS counter
(integer) 0

redis> INCRBY counter 30
(integer) 30

redis> GET counter
"30"


# key       

redis> SET book "long long ago..."
OK

redis> INCRBY book 200
(error) ERR value is not an integer or out of range

15、Redis Incrbyfloatコマンドは、keyに格納された値に指定した浮動小数点数増分値を加算します.
キーが存在しない場合、INCRBYFLOATはキーの値を0に設定してから加算を実行します.
戻り値
コマンドを実行した後のkeyの値.
≪インスタンス|Instance|emdw≫
#            

redis> SET mykey 10.50
OK

redis> INCRBYFLOAT mykey 0.1
"10.6"


#           

redis> SET mykey 314e-2
OK

redis> GET mykey                #   SET            
"314e-2"

redis> INCRBYFLOAT mykey 0      #     INCRBYFLOAT              
"3.14"


#          

redis> SET mykey 3
OK

redis> INCRBYFLOAT mykey 1.1
"4.1"


#     0     

redis> SET mykey 3.0
OK

redis> GET mykey                                    # SET             0
"3.0"

redis> INCRBYFLOAT mykey 1.000000000000000000000    #   INCRBYFLOAT       0    ,     ,       
"4"

redis> GET mykey
"4"

16.Redis Decrコマンドは、keyに格納されている数値を1つ減らします.
キーが存在しない場合、キーの値はまず0に初期化され、DECR操作が実行されます.
値にエラーのタイプが含まれている場合、または文字列タイプの値が数値として表示されない場合は、エラーが返されます.
本操作の値は64ビット(bit)符号付き数字表示に制限されます.
戻り値
コマンドを実行した後のkeyの値.
≪インスタンス|Instance|emdw≫
#         key    DECR

redis> SET failure_times 10
OK

redis> DECR failure_times
(integer) 9


#       key     DECR

redis> EXISTS count
(integer) 0

redis> DECR count
(integer) -1


#           key    DECR

redis> SET company YOUR_CODE_SUCKS.LLC
OK

redis> DECR company
(error) ERR value is not an integer or out of range

17.Redis Decrbyコマンドは、keyが格納している値から指定した減量値を減算します.
キーが存在しない場合、キーの値はまず0に初期化され、DECRBY操作が実行されます.
値にエラーのタイプが含まれている場合、または文字列タイプの値が数値として表示されない場合は、エラーが返されます.
本操作の値は64ビット(bit)符号付き数字表示に制限されます.
戻り値
指定した減量値を減算した後、keyの値.
≪インスタンス|Instance|emdw≫
#       key    DECRBY

redis> SET count 100
OK

redis> DECRBY count 20
(integer) 80


#       key   DECRBY

redis> EXISTS pages
(integer) 0

redis> DECRBY pages 10
(integer) -10

18.Redis Decrbyコマンドは、keyが格納している値から指定した減量値を減算します.
キーが存在しない場合、キーの値はまず0に初期化され、DECRBY操作が実行されます.
値にエラーのタイプが含まれている場合、または文字列タイプの値が数値として表示されない場合は、エラーが返されます.
本操作の値は64ビット(bit)符号付き数字表示に制限されます.
戻り値
指定した減量値を減算した後、keyの値.
≪インスタンス|Instance|emdw≫
#       key    DECRBY

redis> SET count 100
OK

redis> DECRBY count 20
(integer) 80


#       key   DECRBY

redis> EXISTS pages
(integer) 0

redis> DECRBY pages 10
(integer) -10

19.Redis Appendコマンドは、指定したkeyに値を追加するために使用されます.
キーが既に存在し、文字列である場合、APPENDコマンドはキーの元の値の末尾にvalueを追加します.
keyが存在しない場合、APPENDはSET key valueを実行するように、所与のkeyを単純にvalueに設定する.
戻り値
指定した値を追加した後、keyの文字列の長さ.
≪インスタンス|Instance|emdw≫
#       key    APPEND

redis> EXISTS myphone               #    myphone    
(integer) 0

redis> APPEND myphone "nokia"       #       key    APPEND ,    SET myphone "nokia"
(integer) 5                         #     


#            APPEND

redis> APPEND myphone " - 1110"     #     5        12    
(integer) 12

redis> GET myphone
"nokia - 1110"