zoukankan      html  css  js  c++  java
  • 数据类型:字符串类型(string)

    字符串类型(string)

    特点

    1、字符串、数字,都会转为字符串来存储
    2、以二进制的方式存储在内存中

    字符串常用命令

    必须掌握的命令

    # 1. 设置一个key-value
      set key value
    # 2. 获取key的值
      get key
    # 3. key不存在时再进行设置(nx)
      set key value nx
    # 4. 设置过期时间(ex)  过了日期就自动销毁ex秒  px毫秒
      set key value ex seconds
    # 5. 同时设置多个key-value
      mset key1 value1 key2 value2 key3 value3
    # 6. 同时获取多个key-value
      mget key1 key2 key3 

    作为了解的命令

    # 1.获取长度
      strlen key
    # 2.获取指定范围切片内容
      getrange key start stop
    # 3.从索引值开始,value替换原内容
      setrange key index value
    # 4.追加拼接value的值

    、数值操作

    1.字符串类型数字(必须掌握)

    # 整数操作
    INCRBY key 步长(数值+?)
    DECRBY key 步长(数值-?)
    INCR key : +1操作
    DECR key : -1操作
    # 应用场景: 抖音上有人关注你了,是不是可以用INCR呢,如果取消关注了是不是可以用DECR
    
    # 浮点数操作: 先转为数字类型,然后再进行相加减,不能使用append
    incrbyfloat key step

    2.键的命名规范

    mset wang:email wangweichao@tedu.cn

    127.0.0.1:6379> mset wang:email wangweichao@tedu.cn guo:email guods@tedu.cn
    OK
    127.0.0.1:6379> mget wang:email guo:email
    1) "wangweichao@tedu.cn"
    2) "guods@tedu.cn"
    127.0.0.1:6379> 

    3.string数据类型注意

    # key值取值原则
    1、key值不宜过长,消耗内存,且在数据中查找这类键值的计算成本高
    2、不宜过短,可读性较差
    #
    1、一个字符串类型的值最多能存储512M内容

     string命令汇总

    # 字符串操作
    1、set key value
    2、set key value nx
    3、get key
    3、mset
    4、mget
    5、set key value ex seconds
    6、strlen key 
    # 数字操作
    7、incrby key 步长
    8、decrby key 步长
    9、incr key
    10、decr key
    11、incrbyfloat key number#(number可为正数或负数)
    # 设置过期时间的两种方式
    # 方式一
    1、set key value ex 3
    # 方式二
    1、set key value
    2、expire key 5 #
    3、pexpire key 5 # 毫秒
    # 查看存活时间
    ttl key
    # 删除过期
    persist key
    # 返回旧值并设置新值(如果键不存在,就创建并赋值)
    getset key value

    通用命令 适用于所有数据类型

    # 切换库(number的值0-15之间的数字 db0-db15)
        select number
    # 查看键
        keys *   keys 表达式*   #keys * keys user* (user开头的键)
    # 键类型
        TYPE key
    # 键是否存在
        exists key
    # 删除键
        del key
    # 键重命名
        rename key newkey
    # 清除当前库中所有数据(慎用)
        flushdb
    # 清除所有库中所有数据(慎用)
        flushall

     练习:

    1、查看 db0 库中所有的键
      select 0
      keys *
    2、设置键 trill:username 对应的值为 user001,并查看
      set trill:username 'user001'
    3、获取 trill:username 值的长度
      strlen trill:username
    4、一次性设置 trill:password 、trill:gender、trill:fansnumber 并查看(值自定义)
      mset trill:password '123456' trill:gender 'm' trill:fansnumber 10
      mget trill:password trill:gender trill:fansnumber
    5、查看键 trill:score 是否存在
      exists trill:score
    6、增加10个粉丝
      incrby trill:fansnumber 10
    7、增加2个粉丝(一个一个加)
      incr trill:fansnumber
      incr trill:fansnumber
    8、有3个粉丝取消关注你了
      decrby trill:fansnumber 3
    9、又有1个粉丝取消关注你了
      decr trill:fansnumber
    10、思考、思考、思考...,清除当前库
      flushdb
    11、一万个思考之后,清除所有库
      flushall

  • 相关阅读:
    07.swoole学习笔记--tcp客户端
    06.swoole学习笔记--异步tcp服务器
    04.swoole学习笔记--webSocket服务器
    bzoj 4516: [Sdoi2016]生成魔咒
    bzoj 3238: [Ahoi2013]差异
    bzoj 4566: [Haoi2016]找相同字符
    bzoj 4199: [Noi2015]品酒大会
    后缀数组之hihocoder 重复旋律1-4
    二分查找
    内置函数--sorted,filter,map
  • 原文地址:https://www.cnblogs.com/maplethefox/p/11309444.html
Copyright © 2011-2022 走看看