《Redis使用手册之散列》

《Redis使用手册之散列》

《Redis使用手册之散列》

散列简介

Redis为散列键提供了一系列操作命令,通过使用这些命令,用户可以:

  • 为散列的字段设置值,或者只在字段不存在的情况为它设置值。
  • 从散列里面获取给定字段的值
  • 对存储着数字值的字段执行加法操作或减法操作
  • 检查给定字段是否存在于散列当中。
  • 从散列中删除指定字段。
  • 查看散列包含的字段数量
  • 一次为散列的多个字段设置值,或者一次从散列中获取多个字段的值。
  • 获取散列包含的所有字段、所有值或者所有字段和值。

HSET:为字段设置值

127.0.0.1:6379> hset hashkey field value

(integer) 1

127.0.0.1:6379> hset hashkey good hh

(integer) 1

HSETNX:只在字段不存在的情况下为它设置值

127.0.0.1:6379> hsetnx hashkey field value

(integer) 0

127.0.0.1:6379> hsetnx hashkey field1 value1

(integer) 1

HSETNX:只有字段不存在的情况下为它设置值 HSETNX hash field value

HGET:获取字段的值

127.0.0.1:6379> hget hashkey field

"value"

HGET:获取字段的值: HGET hash field

HGET:获取字段的值

HINCRBY:对字段存储的整数值执行加法或减法操作

  • 127.0.0.1:6379> hincrby user:10086 age increment

    (error) ERR value is not an integer or out of range

    127.0.0.1:6379> hincrby user:10086 age 1

    (integer) 19

    127.0.0.1:6379> hincrby user:10086 age -1

    (integer) 18

    HINCRBY:对字段存储的整数值执行加法或减法操作: HINCRBY hash field increment

    HINCRBY:对字段存储的整数值执行加法或减法操作

HINCRBYFLOAT:对字段存储的数字值执行浮点数加法或减法操作

  • 127.0.0.1:6379> hincrbyfloat user:10086 floatnum 13.5

    "13.5"

    127.0.0.1:6379> hincrbyfloat user:10086 floatnum -1.35

    "12.15"

    HINCRBYFLOAT:对字段存储的数字值执行浮点数加法或减法操作 HINCRBYFLOAT hash field increment

    HINCRBYFLOAT:对字段存储的数字值执行浮点数加法或减法操作

HSTRLEN:获取字段值的字节长度

  • 127.0.0.1:6379> hstrlen user:10086 floatnum

    (integer) 5

    HSETLEN:获取字段值的字节长度 HSETLEN hash field

    HSTRLEN:获取字段值的字节长度

HEXISTS:检查字段是否存在

  • 127.0.0.1:6379> hexists user:10086 floatnum

    (integer) 1

    127.0.0.1:6379> hexists user:10086 floatnum1

    (integer) 0

    HEXISTS:检查字段是否存在 HEXISTS hash field 如果散列包含了给定的字段,那么命令返回1,否则命令返回0

    HEXISTS:检查字段是否存在

HDEL:删除字段

  • 127.0.0.1:6379> hdel user:10086 floatnum

    (integer) 1

    127.0.0.1:6379> hdel user:10086 floatnum1

    (integer) 0

    HDEL:删除字段 HDEL hash field 当给定字段存在于散列当中并且被成功删除时,命令返回1,否则将返回0

    HDEL:删除字段

HLEN:获取散列包含的字段数量

  • 127.0.0.1:6379> hlen user:10086

    (integer) 3

    HLEN:包含散列包含的字段数量 HLEN hash

    HLEN:获取散列包含的字段数量

HMSET:一次为多个字段设置值

  • 127.0.0.1:6379> hmset user001 name "zhangsan" age 18 num 16

    OK

    127.0.0.1:6379> hget user001 name

    "zhangsan"

    HMSET:一次为多个字段设置值 HMSET命令在设置成功时返回OK 如果用户给定的字段已经存在于散列当中,那么HMSET命令将使用用户给定的新值去覆盖字段已有的旧值。

    HMSET:一次为多个字段设置值

HMGET:一次获取多个字段的值

  • 127.0.0.1:6379> hmget user001 name age num

    1. "zhangsan"
    2. "18"
    3. "16"

    HMGET:一次获取多个字段的值 HMGET命令将按照用户给定字段的顺序依次返回与之对应的值。

    HMGET:一次获取多个字段的值

HKEYS、HVALS、HGETALL:获取所有字段、所有值、所有字段和值

HKEYS、HVALS、HGETALL:获取所有字段、所有值、所有字段和值

HKEYS、HVALS、HGETALL:获取所有字段、所有值、所有字段和值

相关推荐
ffqws_17 小时前
redis面试:如何保证双写一致
数据库·redis·缓存
万法若空18 小时前
【数据结构-哈希表】哈希表原理
数据结构·算法·散列表
宠友信息21 小时前
MySQL 租户数据隔离在即时通讯源码后端中的落地方式
java·数据库·spring boot·redis·websocket·mysql
2501_9423895521 小时前
水平姿态的总装和测试
beautifulsoup·排序算法·散列表·fastapi·启发式算法·最小二乘法
吴声子夜歌1 天前
Redis 5.x——pub/sub和Stream
数据库·redis·bootstrap
吴声子夜歌1 天前
Redis 5.x——多种数据类型使用场景
数据库·redis
前端Baymax1 天前
Redis内存暴涨导致服务雪崩
redis
.Cnn1 天前
Redis基础day02
java·数据库·redis
枫叶丹41 天前
Loop Engineering:从提示词到循环系统
数据库·redis·缓存·loop
耀耀_很无聊2 天前
12_Redis Lua 脚本踩坑:为什么 tonumber(ARGV[x]) 会得到 nil?
java·redis·lua