redis 是 key-value 的数据,所以每个数据都是一个键值对,键的类型是字符串;

值的类型分为五种:string、hash、list、set(集合)、zset(有序集合)。

  数据操作的全部命令:http://redis.cn/commands.html


一、String

  概述:String 是 redis 最基本的类型,最大能存储512MB的数据,String 类型是二进制安全的,

即可以存储任何数据、比如数字、图片、序列化对象等。

  1、设置

    a、设置键值:  set key value

    b、设置键值及过期时间,以秒为单位:  setex key 时间值 value

    c、设置多个键值:  mset key value [key value ……]

      示例:mset a 1 b 2

  2、获取

    a、根据键获取值,如果键不存在则返回 null:  get key

    b、根据多个键获取多个值:  mget key [key ……]

      示例:mget a b

  3、运算  要求:值是字符串类型的数字

    a、将 key 对应的值加1:  incr key

    b、将 key 对应的值减1:  decr key

    c、将 key 对应的值加整数:  incrby key 整数值

    d、将 key 对应的值减整数:  decrby key 整数值

  4、其它

    a、追加值:  append key value

    b、获取值长度:  strlen key

注意:只要涉及到 set 存的都是字符串


二、key

  1、查找键,参数支持正则:  keys pattern

    示例:keys *(查找所有)

  2、判断键是否存在,如果存在返回 1,不存在返回 0:  exists key

  3、查看键对应的 value 类型:  type key

  4、删除键和对应的值:  del key [key……]

  5、设置过期时间以秒为单位:  expire key 时间

  6、查看有效时间,以秒为单位:   ttl key(-1 表示没有设置过期时间)


三、hash

  概述:hash 用于存储对象 eg:{name:"tom",age:18}

  1、设置

    a、设置单个值:  hset key field value

      示例:hset p1 name tom,hset p1 age 18

    b、设置多个值:  hmset key field value [field value ……]

      示例:hmset p2 name tom age 18

  2、获取

    a、获取一个属性的值:  hget key field

    b、获取多个属性的值:  hmget key field [field ……]

    c、获取所有属性和值:  hgetall key

    d、获取所有的属性:  hkeys key

    e、获取所有的值:  hvals key

    f、返回包含属性的个数:  hlen key

  3、其它

    a、判断属性是否存在:  hexists key field(存在返回 1,不存在返回 0)

    b、删除属性和值:  hdel key field [field ……]

    c、返回值的字符串长度:  hstrlen key field


四、list

  概述:列表的元素类型为 string ,按照插入顺序排序,在列表的头部或尾部添加元素

  1、设置

    a、在头部插入:  lpush key value [value ……]

    b、在尾部插入:  rpush key value [value ……]

    c、在一个元素的前|后插入新元素:  linsert key before|after pivot value

      示例 :linsert s1 after 1 4

    d、设置指定索引的元素值:  lset key index value  

      注意:index 从0开始;索引值可以是负数,表示偏移量是从 list 的尾部开始,如 -1 表示最后一个元素

  2、获取

    a、移除并返回 key 对应的 list 的第一个元素:  lpop key

    b、移除并返回 key 对应的 list 的最后一个元素:  rpop key

    c、返回存储在 key 的列表中的指定范围的元素:  lrange key start end

      示例:lrange s1 0 2 / lrange s1 0 -1

      注意:start end 都是从 0 开始;偏移量可以是负数

  3、其它

    a、剪裁列表,改为原集合的一个子集:  ltrim key start end

      注意:start end 都是从 0 开始,偏移量可以是负数

    b、返回存储在 key 里的 list 的长度:  llen key

    c、返回列表中索引对应的值:  lindex key index


五、set

  概述:无序集合,元素类型为 string 类型,元素具有唯一性,不重复

  1、设置

    a、添加元素:  sadd key member [member ……]

  2、获取

    a、返回 key 集合中所有元素:  smembers key

    b、返回集合元素个数:  scard key

  3、其它

    a、求多个集合的交集:  sinter key [key ……]

    b、求多个集合的差集:  sdiff key [key ……]

    c、求多个集合的合集:  sunion key [key ……]

    d、判断元素是否在集合中:  sismember key member(存在返回 1,不存在返回 0)


六、zset

  概述:

    a、有序集合,元素类型为 string,元素具有唯一性,不能重复

    b、每个元素都会关联一个 double 类型的 score(表示权重),通过权重的大小排序,元素的 score 可以相同

  1、设置

    a、添加:  zadd key score member [score member ……]

  2、获取

    a、返回指定范围的元素:  zrange key start end

    b、返回元素个数:  zcard key

    c、返回有序集合 key 中,score 在 min 和 max 之间的元素的个数:  zcount key start end

    d、返回有序集合 key 中,成员 member 的 score 值:  zscore key member

(完结)

Redis 简介与命令操作的更多相关文章

  1. Jedis对Redis的常用命令操作

    本篇主要总结一些Jedis对Redis的常用命令操作: 1.对key操作命令 2.对String操作命令 3.对List操作命令 4.对Set操作命令 5.对Hash操作命令 6.排序操作指令 一.项 ...

  2. 【python】-- Redis简介、命令、示例

    Redis简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久化 ...

  3. 2、redis原生的命令操作不同数据类型

    一.常用数据类型简介: redis常用五种数据类型:string,hash,list,set,zset(sorted set). 1.String类型 String是最简单的类型,一个key对应一个v ...

  4. Redis简介+常用命令

    Redis=REmote DIctionary Server Redis是一个使用C语言编写的开源数据库,是高性能的key-value数据库,是内存数据库,支持数据持久化. Redis常用数据类型: ...

  5. redis的基础命令操作

    文章目录 前言 一.字符串类型 二.哈希类型 三.列表类型 四.集合类型 五.有序集合类型 六.通过命令 前言 redis的数据结构 redis存储的是key,value格式的数据,其中的key是字符 ...

  6. 【Redis】使用Jedis操作Redis

    Jedis介绍 jedis就是集成了redis的一些命令操作,封装了redis的java客户端. Jedis使用 使用jedis需要引入jedis的jar包,下面提供了maven依赖 jedis.ja ...

  7. Redis命令操作简介及五种value数据类型

    转自:https://blog.csdn.net/ty4315/article/details/52050721 Redis是使用键值存储数据,key必须是字符串value支持五种数据类型,最新版本又 ...

  8. Spring+SpringMVC+MyBatis+easyUI整合进阶篇(九)Linux下安装redis及redis的常用命令和操作

    redis简介 Redis是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis与其他key-value缓存产品有以下三个特点: Redis支持数据的持久化,可以将内存 ...

  9. Redis系列(二):Redis的数据类型及命令操作

    原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...

随机推荐

  1. 随机数据生成与对拍【c++版,良心讲解】

    10.7更新:见最下面 离NOIP2018没剩多长时间了,我突然发现我连对拍还不会,于是赶紧到网上找资料,找了半天发现了一个特别妙的程序,用c++写的! 不过先讲讲随机数据生成吧. 很简单,就是写一个 ...

  2. 第二章 Python基本图形绘制

    2.1 深入理解Python语言 Python语言是通用语言 Python语言是脚本语言 Python语言是开源语言 Python语言是跨平台语言 Python语言是多模型语言 Python的特点与优 ...

  3. Dom 动态添加元素节点总结

    jQuery创建元素节点的方法: 创建元素节点: $("<div></div>"): 创建文本节点: $("<div>直接将文本的内容 ...

  4. 08 Django REST Framework 解决前后端分离项目中的跨域问题

    01-安装模块 pip install django-cors-headers 02-添加到INSTALL_APPS中 INSTALLED_APPS = ( ... 'corsheaders', .. ...

  5. 分布式存储ceph——(2)openstack对接ceph存储后端

    ceph对接openstack环境 一.使用rbd方式提供存储如下数据: (1)image:保存glanc中的image: (2)volume存储:保存cinder的volume:保存创建虚拟机时选择 ...

  6. 软工+C(4): Alpha/Beta换人

    // 上一篇:超链接 // 下一篇:工具和结构化 注:在一次软件工程讨论课程进度设计的过程中,出现了这个关于 Alpha/Beta换人机制的讨论,这个机制在不同学校有不同的实施,本篇积累各方观点,持续 ...

  7. 判断一个点是否在某个区域内。百度,高德,腾讯都能用。(php版)

    <?php // *** 配置文件(表示区域的三维数组)其内的点,必须按顺时针方向依次给出! $area = array( // 天通苑店 0 => array( array('x'=&g ...

  8. Vue.js 2.x笔记:组件(5)

    1. 组件简介 组件(Component)是 Vue.js 最强大的功能之一,组件可以扩展 HTML 元素,封装可重用的代码. 组件:为了拆分Vue实例的代码量,以不同的组件来划分不同的功能模块,需要 ...

  9. 代理与hook

    参考:Java 动态代理 代理是什么 为什么需要代理呢?其实这个代理与日常生活中的“代理”,“中介”差不多:比如你想海淘买东西,总不可能亲自飞到国外去购物吧,这时候我们使用第三方海淘服务比如惠惠购物助 ...

  10. JPA:identifier of an instance of was altered from

    由于前台提交的对象,并没有关联对象的数据. 所以要把关联对象赋值一下,在合并集合. WmsOutboundreport entity2 = service.findOne(item.getOutbou ...