一、String

set : 添加数据
get : 获得指定 key 的 value
del : 删除指定 key
append : 往字符串后面添加
      append k1 12345
      --> v112345
strlen : 获取字符串长度
===================================================
incr key: 自加 1
decr key: 自减 1
incrby 3 key:自加3
decrby 3 key:自减3
===================================================
getrange k1 0 3 :获得value 0~3 的长度的字符串
setrange k1 0 abc:将value 前三个替换为 abc(从 0 开始的 abc)
===================================================
setex:(set with expire)添加数据并设置过期时间
      -->setex k1 10 abc(设置k1 为 abc 并10 秒过期)
setnx:(set if not exist)如果不存在的话,就设置
============= ======================================
mset  :(more set)  设置多个 set k1 v1 k2 v2
mget  :(more get)  获得多个 get k1 k2
msetnx :(more set if not exists) 如果不存在 同时设置多个,要么全部成功,要么全部失败

 二、hash ( value 是一个键值对,和 hashmap 差不多 )

hset user name jack
hget user name
hmset user id 1 name jack : 同时设置多个
hmget user id name : 同时获得多个
hkeys user :获得所有的 key
hvals user : 获得所有的 value
hgetall user : 以键值对的形式获得所有
hlen user:获得长度,一个键值对长度为1 
hexists user name : 判断 是否有name
hincrby user age 2 : 年龄 加 2
hincrbyfloat user score 0.2 : 分数加0.5(小数)
hsetnx user name jack : 若果没有 name 这个属性,才加进去
hdel user id:删除 id

三、list 链表 ( 是一个双向链表结构,可以双向操作 )

LPUSH list 1 2 3 4 5 : 依次向链表左边插入
RPUSH list 1 2 3 4 5 : 依次向链表右边插入
LRANGE list 0 -1     : 从左往右( 0 -1 读取全部)
===================================================
LPOP : 移除最左边一个,并返回
RPOP : 移出最右边一个,并返回
===================================================
LINDEX  list1 3: 读取 list1 的第 3 个索引位
LLEN list1 : 查看 list1 长度
LREM list1 2 3 : 删除 list1 的 2 个 3 (删除 N 个 value) 
LTRIM list1 0 4 : 截取 list1 的 0 到 4 ,并重新赋值给 list1
RPOPLPUSH list1 list2 : 对 list1 rpop操作返回的结果,对list2 lpush 操作
LSET key index value : 修改指定 index 上的value
LINSERT key before/after v1 v2 : 在 v1 前/后 添加 v2

四、Set( 不重复 )

sadd set1 1 1 2 2 33 : 添加,会自动去掉重复的数据
smembers set1: 查看 set 1 中的所有元素
sismember set1 a : 判断 a 是否是set1 的成员
===================================================
scard set1 : 获取 set 1 中元素的个数
srem key value : 删除指定的 value
srandmember set1  3 : 在set1 中随机找3个
spop set1 : 随机出栈
smove set1 set 2 a : 将 set1 中的 a 移到 set2 (set1 中就没有a 了)
===================================================
sdiff  set1 set2 : 差集 set1 在 set2 中不存在的元素
sinter set1 set2 : 交集 set1 和 set2 同时存在的元素
sunion set1 set2 : 病集 set1 和 set2 所有元素

五、Zset ( sorted set )

在 set 的基础上 加了一个 score 值
之前 set 是 k1 v1  v2 v3
现在 zset 是 k1 score1 v1 score2 v2 score3 v3 
zadd zset1 60 v1 70 v2 80 v3
zrange zset1 0 -1 : 获得所有的 value
zrange zset1 0 -1 withscores : 获得所有的 value 和 score
===================================================
zrangebyscore zset1 60 90 : 截取 60 到 90 分的(左闭右闭)
zrangebyscore zset1 (60 (90 : 截取 60 到 90 分的(左开右开)
zrangebyscore zset1 60 90 limit 3 3 : 截取 60 到 90 分的,
      从下标3 开始截取3 个长度
zrem zet1 v5 : 删除 zset 中的 v5
===================================================
zcard zset01 : 获得个数(score 和 value 是一体的)
zcount zset01 60 90 : 获得 60 分 到 90 分的个数
zrank zset01 v4 :获得 v4 的下标 
zscore zset01 v4 : 获得 v4 对应的 score
===================================================
zrevrank zset01 v4 : 逆序获得下角标
zrevrange zset01 v4 : 逆序显示
zrevrangebyscore zset01 90 60 : 结束分数到开始分数 逆序

redis 五大数据类型的更多相关文章

  1. Redis五大数据类型的常用操作

    在上一篇博文<centos安装redis>中,已经详细介绍了如何在centos上安装redis,今天主要介绍下Redis五大数据类型及其五大数据类型的相关操作. Redis支持五种数据类型 ...

  2. 一文搞定Redis五大数据类型及应用场景

    本文学习知识点 redis五大数据类型数据类型:string.hash.list.set.sorted_set 五大类型各自的应用场景 @TOC 1. string类型 1-1 string类型数据的 ...

  3. redis 五大数据类型使用

    redis 五大数据类型使用 字符串str 单个值 127.0.0.1:6379> set name pp # 设置键值[O(1)] OK 127.0.0.1:6379> setex na ...

  4. 《Redis入门指南(第二版)》读书思考总结之Redis五大数据类型

    热身:系统级命令 1. 获得符合规则的键名列表 KEYS pattern 模式匹配 产品的缓存:product+"."+....;  => keys product* 订单的 ...

  5. Redis五大数据类型详解

    关于Redis的五大数据类型,它们分别为:String.List.Hash.Set.SortSet.本文将会从它的底层数据结构.常用操作命令.一些特点和实际应用这几个方面进行解析.对于数据结构的解析, ...

  6. redis五大数据类型以及常用操作命令

    Redis的五大数据类型 String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value.string类型是二进制安全的.意 ...

  7. 四:Redis五大数据类型

    Redis的五大数据类型 1.string(字符串) string是Redis最基本的类型,你可以理解成与menmcached一模一样的类型,一个key对应一个value string类型是二进制安全 ...

  8. Redis五大数据类型

    首先说明下,Redis是:单线程+多路IO复用技术!!! string set  >  key  +  zset          list hash 常用的几个命令: >keys * 查 ...

  9. redis 五大数据类型之string篇

    一: 1:string(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis ...

  10. 细谈Redis五大数据类型

    文章原创于公众号:程序猿周先森.本平台不定时更新,喜欢我的文章,欢迎关注我的微信公众号. 上一篇文章有提到,Redis中使用最频繁的有5种数据类型:String.List.Hash.Set.SortS ...

随机推荐

  1. H_Dp

    <span style="color:#000099;">/* H - 简单dp 例题扩展 Time Limit:3000MS Memory Limit:65536KB ...

  2. Ubuntu下启动Eclipse报错:A Java RunTime Environment (JRE) or Java Development Kit (JDK) must

    原以为是jdk的环境变量配置错误了,于是从网上找了各种配置环境变量的方法.也注意空格的问题,可无论怎么改,还是这样报错!后来在网上看到一种奇怪的方法.我也不知道为什么这样就OK了? 方法:进入你的ec ...

  3. 基于ArcGIS Flex API实现动态标绘(1.0)

    标绘作为一种数据展示形式,在多个行业都有需求. 基于ArcGIS Flex API(3.6)实现标绘API,当前版本号1.0 alpha,支持经常使用几种标绘符号,包含: 圆弧.曲线.圆形.椭圆.弓形 ...

  4. Android的编译环境--Build系统【转】

    本文转载自:http://blog.csdn.net/kitty_landon/article/details/60764232 Android是一个庞大的系统,包含太多的模块,各种模块的类型也有10 ...

  5. 自己实现的一个 .net 缓存类(原创)

    public class CacheContainer { private static Hashtable ht = new Hashtable(); /// <summary> /// ...

  6. 一个 passive 引发的bug

    不是什么很难的东西,权且做个记录. 首先说下背景,目前的项目中,需要同时绑定 wheel 和 scroll 事件. 绑定 wheel,目的是开发 ctrl + wheel 缩放页面功能,此功能与浏览器 ...

  7. 每条sql语句实际上都是一个事物(事物多种类型解读)

    事务(数据库引擎) 事务是作为单个逻辑工作单元执行的一系列操作.一个逻辑工作单元必须有四个属性,称为原子性.一致性.隔离性和持久性 (ACID) 属性,只有这样才能成为一个事务.原子性事务必须是原子工 ...

  8. XML文件操作之dom4j

    能够操作xml的api还是挺多的,DOM也是可以的,不过在此记录下dom4j的使用,感觉确实挺方便的 所需jar包官网地址:http://www.dom4j.org/dom4j-1.6.1/ dom4 ...

  9. DB2常用运维命令

    DB2是IBM公司推出关系型数据库管理系统.主要应用于银行.医院等大型机构.现今DB2主要包含以下三个系列:DB2 for Linux, UNIX and Windows(LUW) . DB2在Lin ...

  10. 移动前端头部标签(HTML5 head meta)转载

    移动web页面头部书写 字数2516 阅读1128 评论0 喜欢30 HTTP 标题信息(http-equiv) 和页面描述信息(name) http-equiv:该枚举的属性定义,可以改变服务器和用 ...