Redisデータ型-文字列型

夫のタオゴンは昔清风からありますが、あえて彼を男と呼ぶのは誰ですか?
ここに画像の説明を挿入


前書き

文字列型はRedisの最も基本的なデータ型であり、バイナリデータを含むあらゆる形式の文字列を格納できます。文字列型キーの最大容量は512MBです。

1.基本的なコマンド

コマンド 説明
キー値の設定 フィールド値を設定する
GETキー フィールド値を取得する
INCRキー インクリメント番号

1.割り当てと価値

割り当て:SETキー値
値:GETキー

127.0.0.1:6379> set name breez
OK
127.0.0.1:6379> get name
"breez"
127.0.0.1:6379> get other
(nil)
127.0.0.1:6379> 

注意:キーが存在しない場合、空(nil)を返します。

練習:Javaを使用してRedisデータベースを操作します。SET
Mavenの依存関係をインポートします。

<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>3.5.1</version>
</dependency>

@Test
    public void testSTRING(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        String s = jedis.set("name", "清风");
        System.out.println("返回值:"+s);
        String name = jedis.get("name");
        System.out.println("name:"+name);
    }
返回值:OK
name:清风

2.数を増やします

INCRキー

現在のキー値を増やし、増分された値を返します。

例:

127.0.0.1:6379> incr num
(integer) 1
127.0.0.1:6379> incr num
(integer) 2
127.0.0.1:6379> incr num
(integer) 3

キー値が整数でない場合、エラーが表示されます

127.0.0.1:6379> set n str
OK
127.0.0.1:6379> incr n
(error) ERR value is not an integer or out of range
127.0.0.1:6379> set n2 1
OK
127.0.0.1:6379> incr n2
(integer) 2
127.0.0.1:6379> incr n2
(integer) 3
127.0.0.1:6379> incr n2
(integer) 4
127.0.0.1:6379>       

上からn整数ではなく文字列、n2整数です

練習:Javaを使用してRedisデータベースを操作します。INCR

 @Test
    public void testINCR(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        Long num1 = jedis.incr("num");
        Long num2 = jedis.incr("num");
        Long num3 = jedis.incr("num");
        System.out.println("执行三次后的值:"+num3);
    }
执行三次后的值:3

第二に、高度なコマンド

コマンド 説明
INCRBYキーインクリメント 指定された整数を増やします
DECRキー 整数を減らす
DECRBYキーのデクリメント 指定された整数を減らします
INCRBYFLOATキーインクリメント 指定された浮動小数点数を増やします
APPENDキー値 最後に値を追加します
STRLENキー 文字列の長さを取得する
MGETキー[キー…] 複数のキー値を同時に設定する
MSETキー値[キー値…] 複数のキーの値を同時に取得する
GETBITキーオフフェスト キーで指定されたビット番号に対応する2進数(0または1)を取得します
SETBITキーoffest値 キーで指定したビット番号の2進数(0または1)を設定します
BITCOUNTキー[開始] [終了] 指定されたバイト範囲をカウントします
BITOP操作デストキーキー[キー…] 複数の文字列型キーでビット演算を実行します

1.指定された整数を増やします

INCRBYキーインクリメント

INCRBYコマンドはINCRコマンドと同じですが、前者を使用incrementして一度に増加する値を指定できる点が異なります。
例:

127.0.0.1:6379> incrby num 2
(integer) 2
127.0.0.1:6379> incrby num 2
(integer) 4
127.0.0.1:6379> incrby num 2
(integer) 6
127.0.0.1:6379>   

練習:Javaを使用してRedisデータベースを操作します。INCRBY

@Test
    public void testINCRBY(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        jedis.incrBy("num",2);
        jedis.incrBy("num",2);
        Long num = jedis.incrBy("num", 2);
        System.out.println("执行三次后的结果:"+num);
    }
执行三次后的结果:6

2.指定された整数を減らします

DECRキー
DECRキーの増分

使用法は、キー値がデクリメントされることを除いて、INCRコマンドと同じです。
例:

  • DECR
127.0.0.1:6379> set num 10
OK
127.0.0.1:6379> decr num
(integer) 9
127.0.0.1:6379> decr num
(integer) 8
127.0.0.1:6379> decr num
(integer) 7

練習:Javaを使用してRedisデータベースを操作します。DECR

@Test
    public void testDECR(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        jedis.set("num","10");
        System.out.println("初始值:"+jedis.get("num"));
        jedis.decr("num");
        jedis.decr("num");
        Long num = jedis.decr("num");
        System.out.println("递减3次后的值:"+num);
    }
初始值:10
递减3次后的值:7
  • DECRBY
127.0.0.1:6379> set num 10
OK
127.0.0.1:6379> decrby num 3
(integer) 7
127.0.0.1:6379> decrby num 3
(integer) 4
127.0.0.1:6379> decrby num 3
(integer) 1
127.0.0.1:6379> decrby num 3
(integer) -2

練習:Javaを使用してRedisデータベースを操作します。DECRBY

@Test
    public void testDECRBY(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        jedis.set("num","10");
        System.out.println("初始值:"+jedis.get("num"));
        jedis.decrBy("num",3);
        jedis.decrBy("num",3);
        Long num = jedis.decrBy("num", 3);
        System.out.println("递减3次后的值:"+num);
    }
初始值:10
递减3次后的值:1

3.指定された浮動小数点数を増やします

INCRBYFLOATキーインクリメント

倍精度浮動小数点数をインクリメントします

127.0.0.1:6379> incrbyfloat num 2.6
"2.6"
127.0.0.1:6379> incrbyfloat num 2.6
"5.2"
127.0.0.1:6379> incrbyfloat num 2.6
"7.800000000000001"
127.0.0.1:6379> incrbyfloat num 2.6
"10.4"

練習:Javaを使用してRedisデータベースを操作します。INCRBYFLOAT

@Test
    public void testINCRBYFLOAT(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        jedis.incrByFloat("num",2.6);
        jedis.incrByFloat("num",2.6);
        jedis.incrByFloat("num",2.6);
        Double num = jedis.incrByFloat("num", 2.6);
        System.out.println("递增4次后的结果:"+num);
    }
递增4次后的结果:10.4

4.最後に値を追加します

APPENDキー値

このコマンドの機能は、キーの末尾に値を追加することです。キーが存在しない場合、デフォルト値value:に設定されます。これは、設定されたキー値と同等であり、戻り値は、追加された合計の長さです。ストリング。
例:

127.0.0.1:6379> set key hello
OK
127.0.0.1:6379> append key world
(integer) 10
127.0.0.1:6379> get key
"helloworld"
127.0.0.1:6379> append key  "  breez"
(integer) 17
127.0.0.1:6379> get key
"helloworld  breez"

注意:スペースを追加する必要がある場合は、文字列に二重引用符を追加する必要があります

練習:Javaを使用してRedisデータベースを操作します。APPEND

@Test
    public void testAPPEND(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        jedis.set("key","hello");
        System.out.println("追加前:"+jedis.get("key"));
        jedis.append("key","world");
        System.out.println("追加后:"+jedis.get("key"));
    }
追加前:hello
追加后:helloworld

5.文字列の長さを取得します

STRLENキー

STRLENコマンドは、キーの長さを返します。キーが存在しない場合は0を返します。
例:

127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> strlen key
(integer) 0
127.0.0.1:6379> set key breez
OK
127.0.0.1:6379> strlen key
(integer) 5

練習:Javaを使用してRedisデータベースを操作します。STRLEN

@Test
    public void testSTRLEN(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        Set<String> keys = jedis.keys("*");
        System.out.println("缓存中所有的键:");
        System.out.println(keys);
        jedis.set("key","breez");
        String key = jedis.get("key");
        Long strlen = jedis.strlen("key");
        System.out.println(key+"的长度为:"+strlen);
    }
缓存中所有的键:
[]
breez的长度为:5

6.複数のキー値を同時に取得/設定します

  • MGET

MGETキー[キー…]

  • MSET

MSETキー値[キー値…]

注意:MGET / MSETはGET / SETに似ていますが、前者は複数のキーのキー値を設定できます。

例:

127.0.0.1:6379> mset name breez age 22 sex male
OK
127.0.0.1:6379> keys *
1) "sex"
2) "name"
3) "age"
127.0.0.1:6379> mget name age sex
1) "breez"
2) "22"
3) "male"

練習:Javaを使用してRedisデータベースを操作します。MSETAndMGET

@Test
    public void testMSETAndMGET(){
    
    
        Jedis jedis = new Jedis("127.0.0.1");
        jedis.mset(new String[]{
    
    "name","breez","age","22","sex","male"});
        List<String> mget = jedis.mget(new String[]{
    
    "name","age","sex"});
        System.out.println(mget);
    }
[breez, 22, male]

7.ビット操作

GETBITキーオフセット
SETBITキーオフセット値
BITCOUNTキー[開始] [終了]
BITOP操作destkeyキー[キー…]


Redis中国の公式ウェブサイト:http//www.redis.cn


未完待续,持续更新中...

継続、更新を継続...

おすすめ

転載: blog.csdn.net/qq_43073558/article/details/113824058