一、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. 使用Python生成源文件的两种方法

    利用Python的字符串处理模块,开发者能够编写脚本用来生成那些格式同样的C.C++.JAVA源程序.头文件和測试文件,从而避免大量的反复工作. 本文概述两种利用Python string类生成jav ...

  2. ftk学习记(label篇)

    [ 声明:版权全部,欢迎转载,请勿用于商业用途.  联系信箱:feixiaoxing @163.com] 还是接着上面的一篇博文. 之前以前答应过大家,让大家看一下最简单的ftk程序是怎么执行的.所以 ...

  3. Xcode6+Cocos2d-x真机调试 报错

    眼下真机调试时遇到下面问题. Undefined symbols for architecture arm64: "_png_get_io_ptr", referenced fro ...

  4. Embedded Android 协同翻译

    假设你有一定的Android的基础和英语基础. 有愿意贡献开源社区的心. 假设你对下面文件夹感兴趣, 欢迎增加我们协同翻译<Embedded Android> 此次协同翻译.将使用gith ...

  5. 局部变量,全局变量,extend,static

    main.c #include <stdio.h> #include "zs.h" /* 局部变量是定义在函数.代码块.函数形参列表.存储在栈中,从定义的那一行开始作用 ...

  6. Linux - 虚拟机中的三种网络连接,桥接、NAT、Host-only详解

    虚拟机中的三种网络连接 1.桥接 2.NAT 3.Host-only 桥接方便做实验,配置ip方便.可以和局域网中的其他机器进行通信,也可以和公网进行通信.缺点是会占用一个ip. NAT,可以和主机进 ...

  7. hdoj--3635--Dragon Balls(并查集记录深度)

    Dragon Balls Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  8. Linux&nbsp;Oracle服务启动&amp;停止脚本与开机自启动

    在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介 ...

  9. wamp服务器下安装mantis

    什么是Mantis Mantis是一个BUG管理系统.主要特点如下: 1.用php写的系统,安装方便,不用像 bugzilla 那样安装那么多perl支持: 2.系统相对简单轻磅,使用简单: 3.出色 ...

  10. javascript中的分号【;】

    以前一直以为,在编写js代码的时候,如果在代码后面不添加分号,JavaScript会自动填补分号.最近看了权威指南,才突然发现一直理解有误,而且关于分号的使用,还有很多需要注意的地方. 1.分号的省略 ...