zoukankan      html  css  js  c++  java
  • Redis学习03——存储字符串(String)

    --------------------- 
    作者:愤怒的小明 
    来源:CSDN 
    原文:https://blog.csdn.net/qiwenmingshiwo/article/details/78118541 

    Redis学习03存储字符串String
    一Redis的5种数据类型
    二String说明
    三赋值
    四取值
    五删除
    六数值增
    七数值减
    八数值加上某个值
    九数值减去某个值
    十拼接字符串
    Redis学习03——存储字符串(String)
    一、Redis的5种数据类型
    Redis是一种高级的 key-value 的存储系统,其中value支持五种数据类型

    字符串(String)

    哈希(hash)

    字符串列表(list)

    字符串集合(set)

    有序字符串集合(sorted set)

    key定义的规则

    key不要太长,最大不要超过1024个字节,这不仅会消耗内存还会降 低查询效率

    key不要太短,如果太短会降低key的可读性

    在项目中,key最好有一个统一的命名规范

    二、String说明
    字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这意味着该类型存入和获取的数据相同。在Redis中字符串类型的Value最多可以容纳的数据长度是 512M。

    三、赋值
    赋值可以使用 下面的指令

    set key value
    1
    存储 一个字符串,key是键,value是值。如果该key存在则进行覆盖操作,总是返回 OK 
    例如

    [root@wiming bin]# ./redis-cli
    127.0.0.1:6379> set username wiming
    OK
    1
    2
    3
    4
    四、取值
    取值使用如下指令

    get key
    1
    获取key多对应的value。如果value不是String类型,redis将返回错误信息。因为get命令只能用于获取字符串的value。如果不存在,返回(nil)

    127.0.0.1:6379> get usernamw
    (nil)
    127.0.0.1:6379> get username
    "wiming"
    1
    2
    3
    4
    5
    还可以使用另外一个指令

    getset key value
    1
    先获取key对应的value值,然后在设置该key的值。

    127.0.0.1:6379> getset username qiwenming
    "wiming"
    127.0.0.1:6379> get username
    "qiwenming"
    1
    2
    3
    4
    5
    五、删除
    删除可以使用以下命令,这个命令,对所有类型的起作用

    del key
    1
    删除key对应的值和key

    127.0.0.1:6379> set deltest woshiwimingwoyaocesih
    OK
    127.0.0.1:6379> get deltest
    "woshiwimingwoyaocesih"
    127.0.0.1:6379> del deltest
    (integer) 1
    127.0.0.
    1
    2
    3
    4
    5
    6
    7
    六、数值增
    如果你想让value自增1,那么一个使用下面命令。如果key不存在,其初始值为0,使用下面的命令后其值会变为1。如果value的值不能转成整型,执行以下操作以后,会执行失败并返回相应的错误信息

    127.0.0.1:6379> incr num
    (integer) 1
    127.0.0.1:6379> incr username
    (error) ERR value is not an integer or out of range
    1
    2
    3
    4
    5
    七、数值减
    如果你想实现数值减1,操作使用下面的命令,如果没有设置默认值是0。使用命令以后会变-1。如果value不能转成整型,那么就会返回相应的错误信息。

    decr key
    1
    例子

    127.0.0.1:6379> decr num2
    (integer) -1
    127.0.0.1:6379> decr username
    (error) ERR value is not an integer or out of range
    127.0.0.1:6379> decr num2
    (integer) -2

    1
    2
    3
    4
    5
    6
    7
    8
    八、数值加上某个值
    要实现key对应的value加上某个值,可以使用下面的命令。increment 为你要加上的值,如果为负数,那么就可以实现减的功能了。

    incrby key increment
    1
    例子

    127.0.0.1:6379> incrby num 10
    (integer) 11
    127.0.0.1:6379> incrby num -5
    (integer) 6
    1
    2
    3
    4
    九、数值减去某个值
    要实现key对应的value减去某个值,可以使用下面的命令。decrement 为你要减去的值,如果为负数,那么就可以实现加的功能了。

    decrby key decrement
    1
    例子

    127.0.0.1:6379> decrby num2 6
    (integer) -8
    127.0.0.1:6379> decrby num2 -10
    (integer) 2
    1
    2
    3
    4
    5
    十、拼接字符串
    下面的指令,可以在我们key对应的字符串后面拼接上我们指定的字符串。如果key不存在,就会创建一个key-value.

    append key value
    1
    例子

    127.0.0.1:6379> append appendtest qiwenming
    (integer) 9
    127.0.0.1:6379> get appendtest
    "qiwenming"
    127.0.0.1:6379> append appendtest -wiming
    (integer) 16
    127.0.0.1:6379> get appendtest
    "qiwenming-wiming"

  • 相关阅读:
    恰瓜恰到自己家
    在 D 天内送达包裹的能力
    火车编组
    排列小球
    为什么这段时间一直在做算法题呢
    leetcode 221 ,3,480,6,54,46,209,495
    leetcode 684.354,133,207,121,63,64,jz46,120,357
    leetcode 130,200,207,329,491,494,416,547,51
    flink单机搭建以及快速编写一个简单的java job demo运行
    leetcode 437,450,508,513,538,623,652,654,662
  • 原文地址:https://www.cnblogs.com/h-c-g/p/10732189.html
Copyright © 2011-2022 走看看