Redis五种数据类型:

(1)字符串

(2)字符串列表

(3)有序字符串集合

(4)哈希

(5)字符串集合

其中(4)(5)应用最多。

key命名的注意:

(1)不要过长,尽量不要超过1024,会降低查找的效率,和占用内存

(2)不要过短,要增加名字的可读性

(3)设立统一的命名规范

1  字符串

(1)二进制方式存储安全,存入和获取的数据相同
   (2)value可容纳的最多数据长度是512M

常用命令:

(1)赋值

set  [key]   [value]

例如:   set  username   张三  
      (2)取值

      get  [value]

例如:get username

(3)获取并赋值

getset  [key]   [value]
           例如:getset  username  李四

(3)删除

del  [key]
          例句:del   username

(4)数值增减

incr   num  (给数据创建一个变量,然后初始值设置为1,然后给其加一,如果不是int类型自动失败)

decr   num2(与incr正好相反)

(5)扩展命令

incrby  num  6 指定增加的数值
                 decry    num2 3  指定递减的数值
            追加字符串
                 append  num3 5    在一个字符串后追加5这个字符串(如果num3不存在,会创建一个这样的字符串然后加上5)
             查看用  get  num3

2.  存储Hash

(1)String key 和 String value的map容器
         (2)每一个hash可以存储4294967295个键值对
  存储Hash常用命令

(1)赋值
                        语法: hset [table][key] [value]
                                  hset  myhash name 张三 age 13
          (2)取值
                        语法: hget [table][key] [value]
                                  hget  myhash name
                        语法: hmget [table][key] [value]
                                  hmget myhash name age
                         语法: hgetall  [table]  (会返回所有键值对)
                                  hgetall  myhash

(3)删除

语法: hdel [table][key] [key]
                                  hdel myhash name age
                         语法: hdel [table][key]
                                  hdel myhash name 
                        语法: del [table] 删除整张表格
                                  hmget myhash

(4)增加数字

语法: hinctrby  [table][key][value]
                                  hinctrby  myhash name zhangsan
          (5)自学命令
                        判断所找的数据是否存在,存在返回1
                        语法: hexists  [table][key]
                                  hexists  myhash name 
                        获取列数
                        语法: hlen  [table]
                                  hexists  myhash
                         获取所有行的名称
                        语法: hkeys  [table]
                                  hkeys  myhash
                        获取所有值
                        语法: hvals  [table]
                                  hvals  myhash

Redis数据结构(三)的更多相关文章

  1. Redis数据结构

    Redis数据结构 Redis数据结构详解(一)   前言 Redis和Memcached最大的区别,Redis 除啦支持数据持久化之外,还支持更多的数据类型而不仅仅是简单key-value结构的数据 ...

  2. Redis数据结构底层知识总结

    Redis数据结构底层总结 本篇文章是基于作者黄建宏写的书Redis设计与实现而做的笔记 数据结构与对象 Redis中数据结构的底层实现包括以下对象: 对象 解释 简单动态字符串 字符串的底层实现 链 ...

  3. Redis 数据结构与内存管理策略(下)

    Redis 数据结构与内存管理策略(下) 标签: Redis Redis数据结构 Redis内存管理策略 Redis数据类型 Redis类型映射 Redis 数据类型特点与使用场景 String.Li ...

  4. Redis数据结构之intset

    本文及后续文章,Redis版本均是v3.2.8 上篇文章<Redis数据结构之robj>,我们说到redis object数据结构,其有5中数据类型:OBJ_STRING,OBJ_LIST ...

  5. Redis 数据结构之dict

    上篇文章<Redis数据结构概述>中,了解了常用数据结构.我们知道Redis以高效的方式实现了多种数据结构,因此把Redis看做为数据结构服务器也未尝不可.研究Redis的数据结构和正确. ...

  6. Redis 数据结构的实现

    Redis 数据结构的实现 先看个对照关系: Redis数据结构 实现一 实现二 string 整数(如果value能够表示为整数) 字符串 hash 压缩列表(只包含少量键值对, 并且每个键值对的键 ...

  7. Redis学习系列六ZSet(有序列表)及Redis数据结构的过期

    一.简介 ZSet可以说是Redis中最有趣的数据结构了,因为他兼具了Hash集合和Set的双重特性,也是用的最多的,保证了value值的唯一性的同时,,同时又保证了高性能,最主要的是还可以给每个Va ...

  8. 【Redis笔记(四)】 Redis数据结构 - list链表

    原创作品,转载请标明:http://blog.csdn.net/Xiejingfa/article/details/50573605 经过前面的介绍,我们学习了Redis中string字符串.hash ...

  9. 第18章 Redis数据结构常用命令

    18-1 字符串的一些基本命令 18-1 :配置Spring关于Redis字符串的运行环境 <bean id="poolConfig" class="redis.c ...

  10. 【Redis】270- 你需要知道的那些 redis 数据结构

    本文出自「掘金社区」,欢迎戳「阅读原文」链接和作者进行技术交流 ?? 作者简介 世宇,一个喜欢吉他.MDD 摄影.自走棋的工程师,属于饿了么上海物流研发部.目前负责的是网格商圈.代理商基础产线,平时喜 ...

随机推荐

  1. oracle之 Oracle归档日志管理

    在Oracle中,数据一般是存放在数据文件中,不过数据库与Oracle最大的区别之一就是数据库可以在数据出错的时候进行恢复.这个也就是我们常见的Oracle中的重做日志(REDO FILE)的功能了. ...

  2. CentOS7修复python拯救yum - 转载

    原文:http://blog.51cto.com/welcomeweb/2132654 本人正在吹着空调,喝着茶水,然后qq头像抖了两下,业务开发同学给我打了个招呼,“忙么?帮个忙可以不?” 这很明显 ...

  3. zookeeper 运维

    尽管zookeeper在编程上有很多的阱陷,API也非常的难用,但zookeeper服务本身可以说是很牢靠的了,所以在网上貌似关于运维的文章比较少. 但省心并不代表不会出麻烦,下面总结下zookeep ...

  4. 揭秘 Python 中的 enumerate() 函数

    原文:https://mp.weixin.qq.com/s/Jm7YiCA20RDSTrF4dHeykQ 如何以去写以及为什么你应该使用Python中的内置枚举函数来编写更干净更加Pythonic的循 ...

  5. 北京师范大学第十六届程序设计竞赛决赛-重现赛-B题

    一.题目链接 https://www.nowcoder.com/acm/contest/117/B 二.题意 给定一组序列$a_1,a_2,\cdots,a_n$,表示初始序列$b_1,b_2,\cd ...

  6. java构造函数是否可继承,以及子类构造函数可否不使用super调用超类构造函数

    问题一:java的构造函数能否被继承? 笔者初学java看的一本书说:“java的子类自然的继承其超类的“非private成员”. 通常java的构造函数被设置为public的(若你不写构造函数,ja ...

  7. WPF 出现“调用线程无法访问此对象,因为另一个线程拥有该对象”

    引起这种错误多半是由于在非UI线程刷新界面,解决此问题可以使用Dispatcher this.Dispatcher.Invoke(new Action(() => { UpdateUI(stri ...

  8. Python/Java读取TXT文件

    JAVA: public static void readTextFile(String filePath) { try { String encoding = "GBK"; Fi ...

  9. layui 弹框

      <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&q ...

  10. 使用SQL Server 2008的事务日志传送功能备份数据库(logshiping)

    使用SQL Server 2008的事务日志传送功能备份数据库(logshiping) 使用SQL Server 2008的事务日志传送功能备份数据库(logshiping)