zoukankan      html  css  js  c++  java
  • 深入浅出Redis03 使用Redis数据库(hashes类型)

    一 hashes类型及操作

      Redis hash是一个string类型的field和value的映射表。它的添加,删除操作都是0(1)(平均)。hash特别适合用于存储对象,相较于对将对象的每个字段存成单个string类型。将一个对象存储在hash类型会占用更少的内存,并且可以更方便的存取整个对象。

    1  hset

      设置hash field 为指定值,如果key不存在,则先创建。

    redis 127.0.0.1:6379> hset user:001 name lisi
    (integer) 0
    redis 127.0.0.1:6379> hget user:001 name
    "lisi"

    2.hsetnx

       设置hash field为指定值,如果key不存在,则先创建。如果存在返回0.

    redis 127.0.0.1:6379> hsetnx user:001 name wangwu
    (integer) 0
    redis 127.0.0.1:6379> hget user:001 name
    "lisi"

    3,hmset

       同时设置 hash的多个field

    redis 127.0.0.1:6379> hmset myhash field1 hello field2 world
    OK
    redis 127.0.0.1:6379> hget myhash field1
    "hello"
    redis 127.0.0.1:6379> hget myhash field2
    "world"
    redis 127.0.0.1:6379>

    4 hget

      获取指定的hash field

    5. hmget

       获取全部指定的hash field

    redis 127.0.0.1:6379> hmset myhash field1 hello field2 world
    OK
    redis 127.0.0.1:6379> hget myhash field1
    "hello"
    redis 127.0.0.1:6379> hget myhash field2
    "world"
    redis 127.0.0.1:6379> hmget myhash field1 field2
    1) "hello"
    2) "world"

    6.  hincrby

        指定hash field加上给定值。

    redis 127.0.0.1:6379> hset myhash age 1
    (integer) 1
    redis 127.0.0.1:6379> hget myhash age
    "1"
    redis 127.0.0.1:6379> hincrby myhash age 8
    (integer) 9
    redis 127.0.0.1:6379> hget myhash age
    "9"

    7. hexists

       测试指定的field是否存在。

    redis 127.0.0.1:6379> hexists myhash age
    (integer) 1

    8 hlen

       返回指定hash的field数量

    redis 127.0.0.1:6379> hlen myhash
    (integer) 3

    9. hdel

      删除指定hash的field

    redis 127.0.0.1:6379> hdel myhash field1
    (integer) 1

    10. hkeys

      返回hash的所有field

    redis 127.0.0.1:6379> hkeys myhash
    1) "field2"
    2) "age"

    11. hgetall

      获取某个hash中全部的 field及value.

    redis 127.0.0.1:6379> hgetall myhash
    1) "field2"
    2) "world"
    3) "age"
    4) "9"
  • 相关阅读:
    [学习笔记] 网络最大流的HLPP算法
    [学习笔记] LCT 初步
    js中函数的原型及继承
    关于js中函数的一点总结
    关于css实现水平及垂直居中的方法记录
    js基础总结03 --操作数组
    近期学习es6后对变量提升及let和const的一点思考
    用css和js实现侧边菜单栏点击和鼠标滑动特效
    用css或js实现文本输入框的特效
    Jmeter怎样打印日志
  • 原文地址:https://www.cnblogs.com/wangshuo1/p/redis_3.html
Copyright © 2011-2022 走看看