String是最简单的类型,一个Key对应一个Value,string类型是二进制安全的。Redis的string可以包含任何数据,比如jpg图片或者序列化的对象。最大上限是1G字节。
    Hash是一个string类型的field和value的映射表。它的添加、删除操作都是0(1)(平均)。hash特别适合用于存储对象。相较于将对象的每个字段存成单个string类型。将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象。

  String字符类型 Hash类型
设置一个键值 >set name zhangsan
返回:OK
>hset h1 name zhangsan
设置新键返回int 1;覆盖旧值返回int 0;
批量设置多个键值 >mset name zhangsan age 20 address china-beijing
批量设置name age address三个键(新值覆盖旧值)
成功返回OK,失败报错。
>hmset h1 name zhangsan age 22 city beijing
批量设置name age city三个值(新值覆盖旧值)
成功返回OK,失败报错。
设置一个事先不存在的键值 >setnx color red
nx = not exist不存在的
返回:int 1/0
>hsetnx h1 city 'new york'
nx = not exist不存在的
返回:int 1/0
批量设置多个事先不存在的键值 >msetnx school beida room 205
全部成功返回int 1,失败返回int 0,一个失败均失败。
 
设置一个有生命周期的键值 >setex address 10 'china beijing chaoyang'
ex = expir[ɪks'pər]生存时间
单位:秒
 
获取原值并重设新值 >getset name lisi  设置一个新值
"zhangsan" 返回原值
 
     
部分设置某键的值(替换) >setrange email 7 @gmail.com 从第7个偏移开始替换

>setrange name 0 lisi 从第0个偏移开始替换(从开头替换)
(integer) 8 成功返回替换后的字符长度(字节数)
注:偏移n1从0计数,不可为负值

 
向尾部追加值 >append name 'lisi wangwu'
在字符末尾追加一段字符串,返回新值长度
 
指定键自增:+1 >incr age
使整型数自增:+1
注:键若不存在就创建一个值为0的值并开始计算
 
指定键自增:+n >incrby age 3
使整型数据自增:+n,也可指定负值达到自减:-n目的
注:键若不存在就创建一个值为0的值并开始计算
>hincrby h1 age 2
使整型数据自增+n,也可指定负值达到自减:-n目的
注:键若不存在就创建一个值为0的值并开始计算
指定键自减:-1 >decr age  
指定键自减:-n >decrby age 2  
     
获取一个键值 >get name >hget h1 name
批量获取多个键值 >mget name age address >hmget h1 name age sex
部分获取某键的值(字符串) >getrange name 2 3
"ang"
注:第一个偏移从首0计数(需n1>=0),第二个偏移正负均可(首、尾偏移值均为-1);
本例name原值为zhangsan
 
获取字符长度 >strlen name
获取name的长度,单位:字节
 
获取数据库中所有键名 >keys *     获取数据库中所有键名
>keys nam*  获取数据库中所有以“name”开头的键名
>keys nam*g 获取数据库中所有以“name”开头,并以“g”结尾的键名 
>hkeys h1
获取h1内的所有键名;
注:每次只能获取1个hash表
     
【hash】获取单hash表所有值   >hvals h1
获取h1表的所有“值”;
注:每次只能获取1个hash表
【hash】获取单hash表所有
 的“键-值”组合
  >hgetall h1
获取h1内的所有“键-值”组合;
注:每次只能获取1个hash表
【hash】判断某单个键是否存在   >hexists h1 age
判断age键是否存在,存在返回int 1,否则返回int 0
注:每次只能查看1个键
【hash】获取指定表的键的总数   >hlen h1
查看h1表的总的键的个数
注:每次只能查看1个hash表
【hash】删除表的若干个键   >hdel h1 age       删除h1表的age键
>hdel h1 name city 删除h1表的name city多个键
注:每次可删除多个键
     

Redis的String、Hash类型命令的更多相关文章

  1. 6、Redis中对Hash类型的操作命令

    写在前面的话:读书破万卷,编码如有神 -------------------------------------------------------------------- ------------ ...

  2. 第二课补充01——redis-cli命令行详解、string类型、list类型、hash类型命令操作详解

    一. redis-cli命令行参数 1.-x参数:从标准输入读取一个参数: [问题] [解决] 因为echo命令是默认带有回车\n的,不带回车需要echo –n命令: echo -n "ha ...

  3. Redis之哈希类型命令

    Hash(哈希) Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象. Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿 ...

  4. .Net Core下 Redis的String Hash List Set和Sorted Set的例子

    1.新建一个.Net Core控制台应用程序,用Nuget导入驱动 打开程序包管理控制台, 执行以下代码. PM> Install-Package ServiceStack.Redis 即可添加 ...

  5. 高可用Redis(三):Hash类型

    1.哈希类型键值结构 哈希类型也是key-value结构,key是字符串类型,其value分为两个部分:field和value 其中field部分代表属性,value代表属性对应的值 上面的图里,us ...

  6. Redis之无序集合类型命令

    Redis 集合(Set) Redis 的 Set 是 String 类型的无序集合.集合成员是唯一的,这就意味着集合中不能出现重复的数据. Redis 中集合是通过哈希表实现的,所以添加,删除,查找 ...

  7. Redis的List链表类型命令

    List是一个链表结构,主要功能是push.pop.获取一个范围的所有值等等,操作中key理解为链表的名字.list类型其实就是一个每个子元素都是string类型的双向链表.我们可以通过push.po ...

  8. redis:String字符串类型(三)

    字符串拼接(如果key不存在则创建):append name " applesnt" 获取字符串的长度:strlen name 127.0.0.1:6379> set nam ...

  9. Redis 之string结构及命令详解

    1.set  key  value  ex  秒数   px  毫秒数  nx / xx  设置一个值,注:ex 与 px 同时存在时,取写在后面的一个为有效期,nx表示key不存时设置成功,xx表示 ...

随机推荐

  1. 准备正式开始学习C++,先发点牢骚

    由于职业关系,经常使用AutoCAD之类绘图软件,但这些软件平台的功能,对专业的应用细节来说,并不能全都照顾到,需要一些二次开发,提升一些个性化操作的效率.软件本身也大多提供了开发软件包,AutoCA ...

  2. Ubuntu 安装python后,安装python-dev

    1.通常情况下: sudo apt install python-dev 或者 在 sudo apt install python 命令下安装应该也附带了 python-dev 上述 pyhthon ...

  3. 虚拟货币——比特币行情价格分析

    最近挖以太币的朋友们在关注以太坊行情时,一定会发现以太币的价格对比之前上涨了不少.肯定有部分朋友想了解这次上涨的原因,我们特地为此查询了一番.因为比特币相当于虚拟货币中的黄金,它的价格波动会波及到其他 ...

  4. Python基础灬序列(字符串、列表、元组)

    序列 序列是指它的成员都是有序排列,并且可以通过下标偏移量访问到它的一个或几个成员.序列包含字符串.列表.元组. 字符串 chinese_zodiac = '鼠牛虎兔龙蛇马羊猴鸡狗猪' print(c ...

  5. USACO 1.5.4 Checker Challenge跳棋的挑战(回溯法求解N皇后问题+八皇后问题说明)

    Description 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子. 列号 0 1 2 3 4 5 6 ...

  6. 20135208JAVA第二次试验

    北京电子科技学院(BESTI) 实     验    报     告 课程:Java程序设计  班级:1352 姓名:贺邦  学号:20135208 成绩:             指导教师:娄嘉鹏  ...

  7. AOP:静态代理实现方式①通过继承②通过接口

    文件结构: 添加日志: package com.wangcf.manager; public class LogManager { public void add(){ System.out.prin ...

  8. Eclipse的黑色主题背景(github)

    MoonRise UI Theme   An early version of a dark UI theme for Eclipse 4+. Requirements Eclipse 4.2+ In ...

  9. DP---基本思想 具体实现 经典题目 POJ1160 POJ1037

    POJ1160, post office.动态规划的经典题目.呃,又是经典题目,DP部分的经典题目怎就这么多.木有办法,事实就这样. 求:在村庄内建邮局,要使村庄到邮局的距离和最小. 设有m个村庄,分 ...

  10. 201621123037 《Java程序设计》第7周学习总结

    作业06-接口.内部类 1. 本周学习总结 以你喜欢的方式(思维导图或其他)归纳总结集合相关内容. 答: 思维导图: 其他-笔记: 2. 书面作业 1. ArrayList代码分析 1.1 解释Arr ...