redis之Hash类型常用方法总结

格式:

存--HMGET key field [field ...]
取--HMGET key field [field ...]

M:表示能取多个值,many

H:表示hash类型

基本操作

  1. hmset key field value [field value ...] 设置hash字段和值

    127.0.0.1:6379> hmset hehe_key name "panlifu" age "100"
    OK
    127.0.0.1:6379> hgetall hehe_key
    1) "name"
    2) "panlifu"
    3) "age"
    4) "100"
    127.0.0.1:6379> hmget hehe_key name
    1) "panlifu"
    127.0.0.1:6379> hmget hehe_key age
    1) "100"
    127.0.0.1:6379>
  2. hmget key field [field ...] 获取哈希表中某个字段的值

    127.0.0.1:6379> hmset hehe_key name "panlifu" age "100"
    OK
    127.0.0.1:6379> hmget hehe_key name
    1) "panlifu"
    127.0.0.1:6379> hmget hehe_key age
    1) "100"
    127.0.0.1:6379>
  3. hgetall key 获取哈表表中所有字段的值及字段

    127.0.0.1:6379> hmset hehe_key name "panlifu" age "100"
    OK
    127.0.0.1:6379> hgetall hehe_key
    1) "name"
    2) "panlifu"
    3) "age"
    4) "100"
  4. hdel key field [field ...] 删除一个或多个哈希表字段

    127.0.0.1:6379> hmset hehe_key name "panlifu" age "100"
    OK
    127.0.0.1:6379> hmget hehe_key name
    1) "panlifu"
    127.0.0.1:6379> hmget hehe_key age
    1) "100"
    127.0.0.1:6379> hdel hehe_key name
    (integer) 1
    127.0.0.1:6379> hmget hehe_key name
    1) (nil)
  5. hexists key field 查看哈希表中,指定的字段是否存在,存在返回1,不存在(哈希表或指定字段不存在)返回0

    127.0.0.1:6379> hmset hehe name panlifu  sex  boy
    OK
    127.0.0.1:6379> hexists keke name
    (integer) 0
    127.0.0.1:6379> hexists hehe name
    (integer) 1
  6. hget key field 获取存储在哈希表中指定字段的值

    127.0.0.1:6379> hmset hehe_key name "panlifu" age "100"
    OK
    127.0.0.1:6379> hgetall hehe_key
    1) "name"
    2) "panlifu"
    3) "age"
    4) "100"
    127.0.0.1:6379> hmget hehe_key name
    1) "panlifu"
    127.0.0.1:6379> hmget hehe_key age
    1) "100"
    127.0.0.1:6379>
  7. hset key field 设置存储在哈希表中指定字段的值(只能存储一个)

    127.0.0.1:6379> hset hehe age 10
    (integer) 0
    127.0.0.1:6379> hget hehe age
    "10"
  8. hincrby key field increment 为哈希表 key 中的指定字段的整数值加上增量 increment

    127.0.0.1:6379> hset hehe age 10
    (integer) 0
    127.0.0.1:6379> hget hehe age
    "10"
    127.0.0.1:6379> hincrby hehe age 1 # hash表hehe中的age字段的值增加1
    (integer) 11
    127.0.0.1:6379> hget hehe age
    "11"
  9. hincrbyfloat key field increment 为哈希表 key 中的指定字段的浮点数值加上增量 increment 。

    127.0.0.1:6379> hset hehe height 1.8
    (integer) 1
    127.0.0.1:6379> hincrbyfloat hehe height 0.5
    "2.3"
    127.0.0.1:6379> hget hehe height
    "2.3"
  10. hkeys key 获取所有哈希表中的字段

    127.0.0.1:6379> hkeys hehe
    1) "name"
    2) "age"
    3) "sex"
    4) "height"
  11. hlen key 获取哈希表中字段的数量

    127.0.0.1:6379> hkeys hehe
    1) "name"
    2) "age"
    3) "sex"
    4) "height"
    127.0.0.1:6379> hlen hehe
    (integer) 4
  12. hsetnx key field value 只有在字段 field 不存在时,设置哈希表字段的值。

    127.0.0.1:6379> hgetall hehe
    1) "name"
    2) "panlifu"
    3) "age"
    4) "11"
    5) "sex"
    6) "boy"
    7) "height"
    8) "2.3"
    127.0.0.1:6379> hsetnx hehe name lt
    (integer) 0
    127.0.0.1:6379> hgetall hehe
    1) "name"
    2) "panlifu"
    3) "age"
    4) "11"
    5) "sex"
    6) "boy"
    7) "height"
    8) "2.3"
  13. hvals key 获取哈希表中所有值

    127.0.0.1:6379> hgetall hehe
    1) "name"
    2) "panlifu"
    3) "age"
    4) "11"
    5) "sex"
    6) "boy"
    7) "height"
    8) "2.3"
    127.0.0.1:6379> hvals hehe
    1) "panlifu"
    2) "11"
    3) "boy"
    4) "2.3"
  14. HSCAN key cursor [MATCH pattern] [COUNT count] 迭代哈希表中的键值对。

    # 1. 查看hash表pms:1中有多少条记录
    127.0.0.1:6379[1]> hgetall pms:1
    1) "stock"
    2) "12"
    3) "freeze"
    4) "10"
    5) "stock:1"
    6) "11"
    7) "stock:2"
    8) "23"
    9) "stock:freeze:1"
    10) "111"
    11) "stock:5"
    12) "1212" # 2. 模糊查看pms:1下的键
    127.0.0.1:6379[1]> hscan pms:1 0 match stock:* count 100
    1) "0"
    2) 1) "stock:1"
    2) "11"
    3) "stock:2"
    4) "23"
    5) "stock:freeze:1"
    6) "111"
    7) "stock:5"
    8) "1212" # 3. 模糊查看pms:1下的键
    127.0.0.1:6379[1]> hscan pms:1 0 match stock* count 100
    1) "0"
    2) 1) "stock"
    2) "12"
    3) "stock:1"
    4) "11"
    5) "stock:2"
    6) "23"
    7) "stock:freeze:1"
    8) "111"
    9) "stock:5"
    10) "1212" # 4. 模糊查看pms:1下的键
    127.0.0.1:6379[1]> hscan pms:1 0 match stock:freeze:* count 100
    1) "0"
    2) 1) "stock:freeze:1"
    2) "111" # 5. 查看有多少个键
    127.0.0.1:6379[1]> keys *
    1) "pms:1"
    2) "pms:freeze:21"
    3) "pms:10"
    4) "pms:11"
    5) "pms:9"
    6) "pms:4"
    7) "name"
    8) "pms:5"
    9) "pms:8"
    10) "pms:7"
    11) "pms:2"
    12) "go:123"
    13) "pms:3"
    14) "pms:6" # 6. 模糊查找pms:*的键
    127.0.0.1:6379[1]> scan 0 match pms:* count 10
    1) "3"
    2) 1) "pms:1"
    2) "pms:8"
    3) "pms:freeze:21"
    4) "pms:5"
    5) "pms:11"
    6) "pms:9"
    7) "pms:4"
    8) "pms:3"
    9) "pms:6" # 7. 模糊查找pms:*的键,游标从3开始
    127.0.0.1:6379[1]> scan 3 match pms:* count 10
    1) "0"
    2) 1) "pms:10"
    2) "pms:7"
    3) "pms:2

redis之Hash类型常用方法总结的更多相关文章

  1. redis之List类型常用方法总结

    redis之List类型常用方法总结 格式: 存---LPUSH key value [value ...] 取--LRANGE key start stop lpush key value [val ...

  2. redis的Hash类型以及其操作

    hashes类型 hashes类型及操作Redis hash是一个string类型的field和value的映射表.它的添加.删除操作都是0(1)(平均).hash特别适合用于存储对象.相较于将对象的 ...

  3. 二:redis 的hash类型相关操作

    =====================二种:hash类型================== 介绍:redis -> hash是一个string类型的field和value的映射表 hash ...

  4. StackExchange.Redis 之 hash 类型示例

    StackExchange.Redis 的组件封装示例网上有很多,自行百度搜索即可. 这里只演示如何使用Hash类型操作数据: // 在 hash 中存入或修改一个值 并设置order_hashkey ...

  5. redis的hash类型

    1.简单描述 hash是一个string类型的field和value的映射表.添加和删除操作都是O(1)(平均)的复杂度.hash类型特别适合用于存储对象.在field的数量在限制的范围内以及valu ...

  6. redis的hash类型!!!!

    Hash类型 redsi的hash是基本类型之一,键值本身又是一对键值结构,是string类型的field和value的映射表,或者说是集合,适合存储对象. Hash的增操作 127.0.0.1:63 ...

  7. Redis之Hash类型操作

    接口IRedisDaoHash: package com.net.test.redis.base.dao; import com.net.test.redis.base.entity.UserPsg; ...

  8. redis对hash进行的相关操作

    redis对hash类型操作的相关命令以及如何在python使用这些命令 redis对hash类型操作的命令: 命令 语法 概述 返回值 Redis Hdel 命令 hdel key field [f ...

  9. 面试官:说说Redis的Hash底层 我:......(来自阅文的面试题)

    redis源码分析系列文章 [Redis源码系列]在Liunx安装和常见API 为什么要从Redis源码分析 String底层实现——动态字符串SDS Redis的双向链表一文全知道 前言 hello ...

随机推荐

  1. netty(二)---客户端连接

    概述 先了解一下 netty 大概框架图 ,可以看到客户端的创建和服务端最大的区别 - 服务端传入两个 EventLoopGroup,客户端传入一个 EventLoopGroup - channel ...

  2. 【C语言】创建一个函数,判断某一正整数是否为完数,并调用这个函数找出1000以内所有完数

    什么是完数? 如果一个数等于它的因子之和,则称该数为“完数”(或“完全数”). 例如,6的因子为1.2.3,而 6=1+2+3,因此6是“完数”.  问题分析 根据完数的定义,解决本题的关键是计算出所 ...

  3. mysql 远程连接不上,bind-address参数配置要求,以及怎么去使得mysql能够允许远程的客户端访问

    刚安装了MySQL服务器,使用远程管理工具总是连接不上,因为知道mysql的默认端口是3306,于是使用telnet连接这个端口,(从这里可以学到telnet是可以这样用的) telnet 192.1 ...

  4. Spring扫描组件的使用详解

    https://blog.csdn.net/you18131371836/article/details/53691044?utm_source=blogxgwz5

  5. Python web在IIS上发布方法和原理

    Python web应用想要发布使用iis发布有两种方式,这篇文章就为大家介绍一下这两种方式的具体实现: 1.配置HttpPlatform程序 HttpPlatform 模块将套接字连接直接传递到独立 ...

  6. Vulnhub_DC7 记录

    基本步骤 经验 & 总结 对信息还是不敏感,其实也是因为对Drupal这个CMS并不熟悉,不知道哪些地方是默认的那些地方是作者修改,比如这个"DC7USER". 对Drup ...

  7. 【代码总结】数据库抽象层PDO

    一.概述 PDO就是一个"数据库访问抽象层",起作用是统一各种数据库的访问接口,能够轻松的在不同数据库之间进行切换. 二.PDO的安装 编辑php.ini文件 添加 extensi ...

  8. centos8下gz,bz2,zip压缩解压缩

    for gz 1.制作压缩包 [root@192 mnt]# tar czf mydir.tar.gz mydir1/ 2.解压gz 压缩包 [root@192 mnt]# tar xvf mydir ...

  9. 搭建一个ssm框架的maven项目需要配置的文件

    单独功能需要的配置文件: 1,mybatis配置文件      mybatis-config.xml2,spring配置文件        spring-context.xml  ......3,we ...

  10. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 网格系统实例:响应式的列重置

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...