redis学习笔记——(2)
4.Redis中的string类型
String类型是最简单的类型,一个Key对应一个Value,String类型是二进制安全的。Redis的String可以包含任何数据,比如jpg图片或者序列化的对象。

存储string类型的键值对。一般形式:set key value; setnx key value; setex key time value
setnx判断插入内容的键是否存在,若键不存在,返回1,成功插入;若存在,返回0,插入失败。如果不用setnx用set的话,若插入内容的键已经存在,那么此次插入的值将会覆盖原先的这个键对应的值。
setex添加了value的存在时间time,当超过这个时间key所对应的value值将被清空,再查这个key将返回nil(即空)。


setrange key num value0 将原先key对应的value下标num及其之后的数替换为value0,这里email原先为dyc40021@126.com。
getrange key num0 num1 从key所对应value值的num0至num1处获取值。
mset和mget是批量设置和获取,msetnx,msetex和setnx,setex大体功能相同。
getset key value将原先key所对应value替换为现在的value,并返回显示原先的value。

incr对key所对应的值进行自加操作,如果key不存在,则置key的值为1。
decr对key所对应的值进行自减操作,如果key不存在,则置key的值为-1。
incrby key num 对key所对应值进行加num操作,decrby同理。

6%@8U{2Y`RX82OE0XI.png)
append key value0 在原先key说对应的value值后再加上value0,这里原先name = dyc 。
strlen key 获得key所对应字符串的长度。
5.Redis中的hash类型
Redis hash是一个string类型的field和value的映射表。它的添加,删除操作都是0(1)(平均)。Hash特别适合用于存储对象。相较于将对象的每个字段存成单个string类型。将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象。


hset设置hash field为指定值,如果key不存在,则先创建;get方法相似。
hsetnx设置hash field为指定值,如果key不存在,则先创建。如果存在返回0;get方法相似。
hmset同时设置hash的多个field;get方法相似。
hincrby指定的hashfield加上给定值。
hexists测试指定field是否存在。
hlen返回指定hash的field数量。
hdel删除指定hash的field。
hkeys返回hash的所有field。
hvalues返回hash的所有value。
hgetall获取某个hash中全部的field和value。
6.Redis中的list类型
List是一个链表结构,主要功能是push,pop,获取一个范围的所有值等等,操作中Key理解为链表的名字。Redis的list类型其实就是一个每个子元素都是string类型的双向链表。我们可以通过puth,pop操作从链表的头部或者尾部添加删除元素,这样list既可以作为栈,又可以作为队列。


lpush list value 从头部向list中压入数据。
rpush list value 从尾部向list中压入数据。
linsert list before value0 value1 在value0之前插入value1。
lrange list 0 -1 从头到尾打印出list的数据。



lrem list num value0 从list中删除num个value0,从头部开始删。
ltrim list num0 num1 保留list中第num0和num1的数据(有第0个元素),删除其他的。

lpop list 从list头部弹出一个数据。
rpop list 从list尾部弹出一个数据。

rpoplpush list1 list2 从list1尾部中弹出一个数据存入list2头部,并返回这个存入的数据。
redis学习笔记——(2)的更多相关文章
- redis 学习笔记(6)-cluster集群搭建
上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...
- Redis学习笔记~目录
回到占占推荐博客索引 百度百科 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合). ...
- Redis学习笔记4-Redis配置详解
在Redis中直接启动redis-server服务时, 采用的是默认的配置文件.采用redis-server xxx.conf 这样的方式可以按照指定的配置文件来运行Redis服务.按照本Redi ...
- Redis学习笔记7--Redis管道(pipeline)
redis是一个cs模式的tcp server,使用和http类似的请求响应协议.一个client可以通过一个socket连接发起多个请求命令.每个请求命令发出后client通常会阻塞并等待redis ...
- Redis学习笔记一:数据结构与对象
1. String(SDS) Redis使用自定义的一种字符串结构SDS来作为字符串的表示. 127.0.0.1:6379> set name liushijie OK 在如上操作中,name( ...
- Redis学习笔记之ABC
Redis学习笔记之ABC Redis命令速查 官方帮助文档 中文版本1 中文版本2(反应速度比较慢) 基本操作 字符串操作 set key value get key 哈希 HMSET user:1 ...
- (转)redis 学习笔记(1)-编译、启动、停止
redis 学习笔记(1)-编译.启动.停止 一.下载.编译 redis是以源码方式发行的,先下载源码,然后在linux下编译 1.1 http://www.redis.io/download 先 ...
- Redis学习笔记(二)-key相关命令【转载】
转自 Redis学习笔记(二)-key相关命令 - 点解 - 博客园http://www.cnblogs.com/leny/p/5638764.html Redis支持的各种数据类型包括string, ...
- Redis学习笔记(三)Redis支持的5种数据类型的总结
继续Redis学习笔记(二)来说说剩余的三种数据类型. 三.列表类型(List) 1.介绍 列表类型可以存储一个有序的字符串列表,常用的操作是向列表两端添加元素,或者获得列表的一段片段.列表类型内部是 ...
- Redis学习笔记(二)Redis支持的5种数据类型的总结之String和Hash
引言 在Redis学习笔记(一)中我们已经会安装并且简单使用Redis了,接下来我们一起来学习下Redis支持的5大数据类型. 简介 Redis是REmote DIctionary Server(远程 ...
随机推荐
- jquery获取复选框(checkbox)的选中值(一组和单个)
使用jquery获取一组或者单个checkbox的选中状态的值.下面通过一个示例进行说明,假设现有一页面有一组checkbox的name的值为id,那么获取这组name=id的checkbox的值的方 ...
- [转]轻松学习Ionic (四) 修改应用图标及添加启动画面(更新官方命令行工具自动生成)
本文转自:http://blog.csdn.net/zapzqc/article/details/42237935 由于Ionic更新了命令行工具,以后修改应用图标和添加启动画面就简单了,最新方法见最 ...
- Flash剪贴板功能
做JS的都知道,如果不考虑浏览器的兼容问题,其实,JS本身的window.clipboardData对象是可以做到复制内容到剪贴板的功能,但除了IE浏览器,FF和Chrome浏览器都不支持.现在为了浏 ...
- java9-1.类,抽象类,接口的综合小练习
/* 教练和运动员案例(学生分析然后讲解) 乒乓球运动员和篮球运动员. 乒乓球教练和篮球教练. 为了出国交流,跟乒乓球相关的人员都需要学习英语. 请用所学知识: 分析,这个案例中有哪些抽象类,哪些接口 ...
- 程序清单 8-8 exec函数实例,a.out是程序8-9产生的可执行程序
/* ============================================================================ Name : test.c Author ...
- poj3371
Flesch Reading Ease Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 2269 Accepted: 710 De ...
- 1445 送Q币
1445 送Q币 时间限制: 1 s 空间限制: 1000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 一次在玩网络游戏的过程中,在 ...
- TabControl的SelectionChanged事件
DataGrid作为TabControl控件的TabItem的content元素. 当操作DataGrid的不同cell时,会引发了TabControl的SelectionChanged事件的问题. ...
- usb驱动开发2之代码地图
USB只是Linux庞大家族里的一个小部落,host controller是它们的族长,族里的每个USB设备都需要被系统识别.下图显示包含一个USB接口的USB鼠标导出的结果. USB系统中的第一个U ...
- DotNet二维码操作组件ThoughtWorks.QRCode
DotNet二维码操作组件ThoughtWorks.QRCode 在生活中有一种东西几乎已经快要成为我们的另一个电子"身份证",那就是二维码.无论是在软件开发的过程中,还是在普通用 ...