深入浅出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:> hsetnx user: name wangwu
(integer)
redis 127.0.0.1:> hget user: name
"lisi"
3,hmset
同时设置 hash的多个field
redis 127.0.0.1:> hmset myhash field1 hello field2 world
OK
redis 127.0.0.1:> hget myhash field1
"hello"
redis 127.0.0.1:> hget myhash field2
"world"
redis 127.0.0.1:>
4 hget
获取指定的hash field
5. hmget
获取全部指定的hash field
redis 127.0.0.1:> hmset myhash field1 hello field2 world
OK
redis 127.0.0.1:> hget myhash field1
"hello"
redis 127.0.0.1:> hget myhash field2
"world"
redis 127.0.0.1:> hmget myhash field1 field2
) "hello"
) "world"
6. hincrby
指定hash field加上给定值。
redis 127.0.0.1:> hset myhash age
(integer)
redis 127.0.0.1:> hget myhash age
""
redis 127.0.0.1:> hincrby myhash age
(integer)
redis 127.0.0.1:> hget myhash age
""
7. hexists
测试指定的field是否存在。
redis 127.0.0.1:> hexists myhash age
(integer)
8 hlen
返回指定hash的field数量
redis 127.0.0.1:> hlen myhash
(integer)
9. hdel
删除指定hash的field
redis 127.0.0.1:> hdel myhash field1
(integer)
10. hkeys
返回hash的所有field
redis 127.0.0.1:> hkeys myhash
) "field2"
) "age"
11. hgetall
获取某个hash中全部的 field及value.
redis 127.0.0.1:> hgetall myhash
) "field2"
) "world"
) "age"
) ""
深入浅出Redis03 使用Redis数据库(hashes类型)的更多相关文章
- 深入浅出Redis02 使用Redis数据库(String类型)
一 String类型 首先使用启动服务器进程 : redis-server.exe 1. Set 设置Key对应的值为String 类型的value. 例子:向 Redis数据库中插入一条数据类型为S ...
- 深入浅出Redis04使用Redis数据库(lists类型)
一 lists类型及操作 List是一个链表结构,主要功能是push,pop,获取一个范围的所有值等等,操作中key理解为链表的名字. Redis的list类型其实就是一个每个子元素都是sring类 ...
- 使用Redis数据库(String类型)
一 String类型 首先使用启动服务器进程 : redis-server.exe 1. Set 设置Key对应的值为String 类型的value. 例子:向 Redis数据库中插入一条数据类型为S ...
- redis的hashes类型
redis hash 是一个string类型的field和value 的映射表.它的添加.删除操作都是O(1) . hash特别适合用于存储对象.相较于将对象的每个字段存成单个string类型 . 将 ...
- 02_NoSQL数据库之Redis数据库:string类型和hash类型
Strings类型及操作 String是最简单的类型,一个key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比如jpg图片或者序列化的对象. S ...
- 03_NoSQL数据库之Redis数据库:list类型
lists类型及操作 List是一个链表结构,主要功能室push,pop.获取一个范围的所有值等等,操作中key理解为链表的名字.Redis的list类型其实就是一个每个元素都是string类型 ...
- 超强、超详细Redis数据库入门教程
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...
- 超强、超详细Redis数据库入门教程(转载)
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...
- linux --mariadb/redis数据库篇
mariadb ---磁盘型数据库 基础安装 配置好yum源后,软件就可以通过配置的yum源进行安装,按理来讲安装mysql直接通过 yum install mariadb -y 便可安装,但 ...
随机推荐
- 【ArcGIS二次开发】CreateFeature报错(HRESULT E_FAIL)
在VS2010下基于ArcGIS 10.1做二次开发时遇到个奇怪的问题,对于MXD工程文档中已经存在的图层,获取其FeatureClass可以调用CreateFeature()函数生成要素,但是对于通 ...
- Jython概要
1.安装jython 1.1 进入http://www.jython.org/downloads.html ,网页上会显示当前最稳定的版本(The most current stable releas ...
- POJ 1141 Brackets Sequence
Brackets Sequence Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 29502 Accepted: 840 ...
- JavaScript中浏览器兼容问题
浏览器兼容性问题是在实际开发中容易忽略而又最重要的一部分.我们在讲老版本浏览器兼容问题之前,首先要了解什么是能力检测,它是来检测浏览器有没有这种能力,即判断当前浏览器是否支持要调用的属性或者方法.下面 ...
- usb驱动开发6之端点描述符
学到这里不容易,先说一段故事吧. 二兄弟住一大楼的第80层,某深夜回家忘看通知(内容今夜停电). 兄弟俩背着沉重的大背包,在楼底下商量一下,决定一鼓作气,爬楼梯回家.两人抖擞精神,开始爬楼.爬到20楼 ...
- Navi.Soft20.WinCE使用手册
1.概述 1.1应用场景 随着物联网的普及,越来越多的制造商对货品从原料配备,加工生产,销售出库等环节的要求和把控越来越高.在此情况之下,传统的ERP软件已经无法满足现有的流程. 移动设备的应用,在很 ...
- 转载:有关SQL server connection Keep Alive 的FAQ(2)
转: http://blogs.msdn.com/b/apgcdsd/archive/2012/05/18/sql-server-connection-keep-alive-faq-2.aspx 在下 ...
- 线程变量(ThreadLocal)的使用和测试
ThreadLocal可以定义线程范围的变量,也可以称之为线程局部变量.与一般的变量的区别在于,生命周期是在线程范围内的. 也就是说某个类的某个对象(为清晰描述,以下称A对象)里面有个ThreadLo ...
- no.1
#import requests import urllib import bs4 try: html=urllib.urlopen('http://anyun.org') except HTTPer ...
- [iOS翻译]《iOS 7 Programming Pushing the Limits》系列:你可能不知道的Objective-C技巧
简介: 如果你阅读这本书,你可能已经牢牢掌握iOS开发的基础,但这里有一些小特点和实践是许多开发者并不熟悉的,甚至有数年经验的开发者也是.在这一章里,你会学到一些很重要的开发技巧,但这仍远远不够,你还 ...