zoukankan      html  css  js  c++  java
  • Redis数据类型及操作命令

    数据类型都针对键值对中的【值】进行定义的。

    1.string类型(字符串类型)

    • get、set、setnx、incr、incrby、decr、decrby

    • incr、incrby、decr、decrby:只能针对整数类型的数据进行使用。

    • incr命令,它是原子操作,用来生成数据库表的自增主键,是非常安全且高效。

    //以下代码不是一个原子性操作,就可能存在线程安全问题。 int i = 10; i++ ; System.out.println(i);

    • incr命令的使用场景:分布式数据库中订单ID的生成。

    2.hash类型(散列类型)

    • hset、hget、hdel、hmget、hmset
    • hash类型和string类型区别
      • hash类型适合于增删改操作。
      • string类型适合于查询操作。string类型存储对象,需要进行对象转换为json串进行存储。

    3.list类型(队列类型)

    • 适合于只对list列表两端进行操作的场景。

    • list类型存储的数据特点:有序可重复(指的是插入顺序,而不是自然排序顺序)。

    • lpush、lpop、rpush、rpop、lrange

    • 可以用来作为消息队列去使用

    • 可以用来实现商品评论表

    key的设计很重要 1、使用谁作为key。使用谁查询方便 2、key的定义,一定要有意义。 3、key的定义举例: item:1 {id:1,name:'zhangsan'} item:pl:1 {} {} {}

    4.set类型(集合类型)

    • set类型存储的数据特点:无序不重复

    • sadd 、srem、smembers

    • 可以进行多集合操作:差集操作、交集操作、并集操作

      • sdiff、sinter、sunion

    5.zset类型(有序集合类型、sortedset)

    • zset类型存储的数据特点:不重复、有序
    • 底层还是一个set集合,但是该集合中给每个member设置一个score,通过score进行排序。
    • zadd、zrem、zrange、zscore
    • 使用场景:销售排行榜
      • 销量作为分数
      • 销售人员或者商品作为member
  • 相关阅读:
    即时通信 选择UDP还是TCP协议
    Gradle 在Eclipse中的使用
    使用idea+gradle建立SSM项目
    Gradle安装和在IDEA使用 基本操作
    IDEA配置 gradle
    Trustin Lee
    java.security.MessageDigest (2) 生成安全令牌!
    java.security.MessageDigest (1)
    递归算法结合数据库 解析 java树形结构
    mysql 日期加减
  • 原文地址:https://www.cnblogs.com/Adoni/p/12876192.html
Copyright © 2011-2022 走看看