zoukankan      html  css  js  c++  java
  • Redis 对String数据类型的操作

    Redis的 Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字。使用Strings类型,你可以完全实现目前 Memcached 的功能,并且效率更高。还可以享受Redis的定时持久化,操作日志及 Replication等功能。除了提供与 Memcached 一样的get、set、incr、decr 等操作外,Redis还提供了下面一些操作:

    • 获取字符串长度
    • 往字符串append内容
    • 设置和获取字符串的某一段内容
    • 设置及获取字符串的某一位(bit)
    • 批量设置一系列字符串的内容

    Redis能存储二进制安全的字符串,最大长度为1GB

    127.0.0.1:6379> set name "郭红俊"
    OK
    127.0.0.1:6379> get name
    "xe9x83xadxe7xbaxa2xe4xbfx8a"
    127.0.0.1:6379> set name "ghj1976"
    OK
    127.0.0.1:6379> get name
    "ghj1976"

     

    String类型还支持批量的读写操作

    [root@localhost src]# ./redis-cli
    127.0.0.1:6379> mset age 31 sex "male"
    OK
    127.0.0.1:6379> mget age
    1) "31"
    127.0.0.1:6379> mget age sex
    1) "31"
    2) "male"
    127.0.0.1:6379> get age
    "31"
    127.0.0.1:6379> del age
    (integer) 1
    127.0.0.1:6379> mget age sex
    1) (nil)
    2) "male"
    127.0.0.1:6379>

    String类型其实也可以用来存储数字,并支持对数字的加减操作。

     

    127.0.0.1:6379>
    127.0.0.1:6379> incr age
    (integer) 1
    127.0.0.1:6379>
    127.0.0.1:6379> get age
    "1"
    127.0.0.1:6379> incrby age  5
    (integer) 6
    127.0.0.1:6379> get age
    "6"
    127.0.0.1:6379> decr age
    (integer) 5
    127.0.0.1:6379> get age
    "5"
    127.0.0.1:6379> decrby age 3
    (integer) 2
    127.0.0.1:6379> get age
    "2"
    127.0.0.1:6379> del age
    (integer) 1
    127.0.0.1:6379> get age
    (nil)

    说明:

    incr 命令给某个变量加一,如果这个变量不存在,则首先建立,使用默认值0,然后加一后是1, 如上面代码。如果这个变量存在,则直接加一。

    127.0.0.1:6379> set aa 45
    OK
    127.0.0.1:6379> get aa
    "45"
    127.0.0.1:6379> incr aa
    (integer) 46
    127.0.0.1:6379> get aa
    "46"
    127.0.0.1:6379> set bb ghh
    OK
    127.0.0.1:6379> get  bb
    "ghh"
    127.0.0.1:6379> incr bb
    (error) ERR value is not an integer or out of range
    127.0.0.1:6379>

     

    String类型还支持对其部分的修改和获取操作

     

     

    127.0.0.1:6379> set name 郭红俊
    OK
    127.0.0.1:6379> get name
    "xe9x83xadxe7xbaxa2xe4xbfx8a"
    127.0.0.1:6379> append name "ddd."
    (integer) 13
    127.0.0.1:6379> get name
    "xe9x83xadxe7xbaxa2xe4xbfx8addd."
    127.0.0.1:6379> strlen name
    (integer) 13
    127.0.0.1:6379> substr name 0 3
    "xe9x83xadxe7"
    127.0.0.1:6379> substr name 0 2
    "xe9x83xad"

     

     

    更多字符串使用命令参考:

    http://www.redisdoc.com/en/latest/string/index.html 

    redis 全部命令请看:

    http://www.redisdoc.com/en/latest/index.html 

     

    简单统计命令如下:

    127.0.0.1:6379> dbsize
    (integer) 2
    127.0.0.1:6379>
    127.0.0.1:6379> keys *
    1) "sex"
    2) "name"
    127.0.0.1:6379>

     

    dbsize 返回目前存储的数量。

    keys 返回满足查询表达式的所有key  keys * 是全部

  • 相关阅读:
    Tensorboard返回的网址打不开问题
    css的常用知识点
    js的基础知识
    html的常用标签
    python的进程与线程
    python的socket的学习
    python的异常处理
    python类的相关知识第二部分
    python类的相关知识第一部分
    python装饰器的学习笔记
  • 原文地址:https://www.cnblogs.com/ghj1976/p/3546091.html
Copyright © 2011-2022 走看看