redis 五大数据类型
一、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 五大数据类型的更多相关文章
- Redis五大数据类型的常用操作
在上一篇博文<centos安装redis>中,已经详细介绍了如何在centos上安装redis,今天主要介绍下Redis五大数据类型及其五大数据类型的相关操作. Redis支持五种数据类型 ...
- 一文搞定Redis五大数据类型及应用场景
本文学习知识点 redis五大数据类型数据类型:string.hash.list.set.sorted_set 五大类型各自的应用场景 @TOC 1. string类型 1-1 string类型数据的 ...
- redis 五大数据类型使用
redis 五大数据类型使用 字符串str 单个值 127.0.0.1:6379> set name pp # 设置键值[O(1)] OK 127.0.0.1:6379> setex na ...
- 《Redis入门指南(第二版)》读书思考总结之Redis五大数据类型
热身:系统级命令 1. 获得符合规则的键名列表 KEYS pattern 模式匹配 产品的缓存:product+"."+....; => keys product* 订单的 ...
- Redis五大数据类型详解
关于Redis的五大数据类型,它们分别为:String.List.Hash.Set.SortSet.本文将会从它的底层数据结构.常用操作命令.一些特点和实际应用这几个方面进行解析.对于数据结构的解析, ...
- redis五大数据类型以及常用操作命令
Redis的五大数据类型 String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value.string类型是二进制安全的.意 ...
- 四:Redis五大数据类型
Redis的五大数据类型 1.string(字符串) string是Redis最基本的类型,你可以理解成与menmcached一模一样的类型,一个key对应一个value string类型是二进制安全 ...
- Redis五大数据类型
首先说明下,Redis是:单线程+多路IO复用技术!!! string set > key + zset list hash 常用的几个命令: >keys * 查 ...
- redis 五大数据类型之string篇
一: 1:string(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis ...
- 细谈Redis五大数据类型
文章原创于公众号:程序猿周先森.本平台不定时更新,喜欢我的文章,欢迎关注我的微信公众号. 上一篇文章有提到,Redis中使用最频繁的有5种数据类型:String.List.Hash.Set.SortS ...
随机推荐
- 使用Python生成源文件的两种方法
利用Python的字符串处理模块,开发者能够编写脚本用来生成那些格式同样的C.C++.JAVA源程序.头文件和測试文件,从而避免大量的反复工作. 本文概述两种利用Python string类生成jav ...
- ftk学习记(label篇)
[ 声明:版权全部,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 还是接着上面的一篇博文. 之前以前答应过大家,让大家看一下最简单的ftk程序是怎么执行的.所以 ...
- Xcode6+Cocos2d-x真机调试 报错
眼下真机调试时遇到下面问题. Undefined symbols for architecture arm64: "_png_get_io_ptr", referenced fro ...
- Embedded Android 协同翻译
假设你有一定的Android的基础和英语基础. 有愿意贡献开源社区的心. 假设你对下面文件夹感兴趣, 欢迎增加我们协同翻译<Embedded Android> 此次协同翻译.将使用gith ...
- 局部变量,全局变量,extend,static
main.c #include <stdio.h> #include "zs.h" /* 局部变量是定义在函数.代码块.函数形参列表.存储在栈中,从定义的那一行开始作用 ...
- Linux - 虚拟机中的三种网络连接,桥接、NAT、Host-only详解
虚拟机中的三种网络连接 1.桥接 2.NAT 3.Host-only 桥接方便做实验,配置ip方便.可以和局域网中的其他机器进行通信,也可以和公网进行通信.缺点是会占用一个ip. NAT,可以和主机进 ...
- hdoj--3635--Dragon Balls(并查集记录深度)
Dragon Balls Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- Linux Oracle服务启动&停止脚本与开机自启动
在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介 ...
- wamp服务器下安装mantis
什么是Mantis Mantis是一个BUG管理系统.主要特点如下: 1.用php写的系统,安装方便,不用像 bugzilla 那样安装那么多perl支持: 2.系统相对简单轻磅,使用简单: 3.出色 ...
- javascript中的分号【;】
以前一直以为,在编写js代码的时候,如果在代码后面不添加分号,JavaScript会自动填补分号.最近看了权威指南,才突然发现一直理解有误,而且关于分号的使用,还有很多需要注意的地方. 1.分号的省略 ...