Redis 入门练习
Redis提供了一个命令行入门练习的web:http://try.redis.io/
///////////////////////////////////////////////////////////////////////////////
1.设置/获取键值
set key value
get key
实例:
> set name "apple"
OK
> get name
"apple"
///////////////////////////////////////////////////////////////////////////////
2.数值自增(类似i++),此操作属于原子操作,支持多并发
incr key
> set num 15
OK
> incr num
(integer) 16
///////////////////////////////////////////////////////////////////////////////
3.删除键值
del key
> set phone "IPhone6s"
OK
> get phone
"IPhone6s"
> del phone
(integer) 1
> get phone
(nil)
///////////////////////////////////////////////////////////////////////////////
4.设置/查看键值存活时间(单位:秒)
设置:expire key time
查看:ttl key
> set name "winson"
OK
> expire name 30
(integer) 1
> ttl name
(integer) 20
> ttl name
(integer) 11
> ttl name
(integer) -2
返回-2,表示该键值不存在。
> set name "Tom"
OK
> ttl name
(integer) -1
如果设置了一个键值,ttl key会返回-1,表示该键值没有设置存活时间,它会一直存在
///////////////////////////////////////////////////////////////////////////////
5.往list添加元素。
往列表尾部添加元素:rpush list_name value
往列表头部添加元素:lpush list_name value
(integer) -1
> rpush fruits "apple"
(integer) 1
> rpush fruits "banana"
(integer) 2
> rpush fruits "orange"
(integer) 3
> lpush fruits "pear"
(integer) 4
///////////////////////////////////////////////////////////////////////////////
6.获取list的长度
llen list_name
> llen fruits
(integer) 4
///////////////////////////////////////////////////////////////////////////////
7.获取list元素(单纯获取,list中不删除)
获取整个list中的元素(0表示从list的起始下标索引,-1表示list的结尾):lrange list_name 0 -1
> lrange fruits 0 -1
1) "pear"
2) "apple"
3) "banana"
4) "orange"
指定获取list某个范围的元素(1表示起始下标,3表示结束下标):lrange list_name 1 3
> lrange fruits 1 3
1) "apple"
2) "banana"
3) "orange"
///////////////////////////////////////////////////////////////////////////////
8.获取list中的元素(获取后从list中删除)
获取位于list头部的元素:lpop list_name
> lpop fruits
"pear"
> llen fruits
(integer) 3
获取位于list尾部的元素:rpop list_name
> rpop fruits
"orange"
> llen fruits
(integer) 2
///////////////////////////////////////////////////////////////////////////////
9.添加元素到sets(排序规则与添加顺序无关)
sadd set_name value
> sadd devices "watch"
(integer) 1
> sadd devices "phone"
(integer) 1
> sadd devices "computer"
(integer) 1
> sadd devices "pad"
(integer) 1
///////////////////////////////////////////////////////////////////////////////
10.获取sets中的成员
smembers set_name
> smembers devices
1) "phone"
2) "pad"
3) "computer"
4) "watch"
///////////////////////////////////////////////////////////////////////////////
11.删除sets中的成员,删除成功返回1,删除失败返回0
srem set_name value
> srem devices "computer"
1
> smembers devices
1) "phone"
2) "pad"
3) "watch"
> srem devices "sb"
0
///////////////////////////////////////////////////////////////////////////////
12.判断某value是否为sets中的成员。(1为true,0为false)
sismember set_name value
> sismember devices "pad"
(integer) 1
> sismember devices "padpad"
(integer) 0
///////////////////////////////////////////////////////////////////////////////
13.获取两个或多个sets的并集
sunion set_name1 set_name2
> sadd colors "red"
(integer) 1
> sadd colors "green"
(integer) 1
> sunion devices colors
1) "green"
2) "phone"
3) "watch"
4) "pad"
5) "red"
///////////////////////////////////////////////////////////////////////////////
14.添加成员到有序的set集合,默认根据store进行升序排列
zadd set_name store value
> zadd days 45 "Monday"
(integer) 1
> zadd days 65 "Tuesday"
(integer) 1
> zadd days 55 "Wednesday"
(integer) 1
///////////////////////////////////////////////////////////////////////////////
15.获取有序的set集合(参考【7】)
zrange set_name start_index end_index
> zrange days 0 -1
1) "Monday"
2) "Wednesday"
3) "Tuesday"
///////////////////////////////////////////////////////////////////////////////
16.添加hashes集合
hset hashes_name key value
> hset car name "BMW"
(integer) 1
> hset car price "46W RMB"
(integer) 1
> hset car Driver "winson"
(integer) 1
///////////////////////////////////////////////////////////////////////////////
17.获取hashes中的成员
获取所有的成员:hgetall hashes_name
> hgetall car
1) "name"
2) "BMW"
3) "price"
4) "46W RMB"
5) "Driver"
6) "winson"
获取指定的成员:hget hashes_name key
> hget car price
"46W RMB"
///////////////////////////////////////////////////////////////////////////////
18.hashes集合中的数值自增
hincrby hashes_name key count
> hset NBA store 54
(integer) 1
> hincrby NBA store 3
(integer) 57
///////////////////////////////////////////////////////////////////////////////
Redis 入门练习的更多相关文章
- 安装redis入门
redis官网:redis.io redis版本用的是redis-3.2.2 $ wget http://download.redis.io/releases/redis-3.2.2.tar.gz $ ...
- redis入门笔记(2)
redis入门笔记(2) 上篇文章介绍了redis的基本情况和支持的数据类型,本篇文章将介绍redis持久化.主从复制.简单的事务支持及发布订阅功能. 持久化 •redis是一个支持持久化的内存数据库 ...
- redis入门笔记(1)
redis入门笔记(1) 1. Redis 简介 •Redis是一款开源的.高性能的键-值存储(key-value store).它常被称作是一款数据结构服务器(data structure serv ...
- Redis入门指南
随着互联网业务对性能需求日益强烈,作为Key/Value存储的Redis具有数据类型丰富和性能表现优异的特点.如果能够熟练地驾驭它,不管是把它用做缓存还是存储,对很多大型应用都很多帮助.新浪作为世界上 ...
- Redis入门教程:特性及数据类型的操作
虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...
- 【原】Redis入门教程
最近在学习Redis,写几篇文章记录一下学习过程:Redis入门教程. 1.Redis基本概念 Redis Redis Keys Redis 基本数据类型 Redis基本操作 遍历操作 Pub-Sub ...
- windows下使用redis,Redis入门使用,Redis基础命令
windows下使用redis,Redis入门使用,Redis基础命令 >>>>>>>>>>>>>>>> ...
- Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式)
Redis入门 – Jedis存储Java对象 - (Java序列化为byte数组方式) 原文地址:http://alanland.iteye.com/admin/blogs/1600685(欢迎转载 ...
- redis入门(15)redis的数据备份和恢复
redis入门(15)redis的数据备份和恢复
- redis入门(14)redis集群下的数据分区存储
redis入门(10)redis集群下的数据分区存储
随机推荐
- 循序渐进Python3(十)-- 4 -- paramiko
paramiko模块,基于SSH用于连接远程服务器并执行相关操作. 使用 (1)SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: , ))transport.connect( ...
- Angularjs学习笔记(一)
大部分传统的模板系统,对模板的渲染是个线性单向的过程:模板或变量与模板混合在一起产生结果的标记集合.任何对模型的改变都需要通过模板的重新计算.但AngularJS有所不同,任何用户引发的视图的改变,都 ...
- MyBatis复习【简单配置CRUD】
这里的案例集成了log4j的日志框架,项目架构: 用到的jar文件 添加配置文件:mybatis-config.xml 和dao层配置文件StudentDao.xml 这里书写了个简单的案例仅为了说 ...
- iOS之UILabel自适应高度、宽度
下列两条自适应高度和宽度的自定义方法:
- HTTP 错误 500.21 - Internal Server Error 处理程序“PageHandlerFactory-Integrated”
网站发布到IIS上,访问时出现错误 原因:在安装Framework v4.0之后,再启用IIS,导致Framework没有完全安装 解决:开始->所有程序->附件->右键点击“命令提 ...
- C# 解析 Json数据
JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集. JSON采用完全独立于语言的文本格式,可以很容易在 ...
- 很多事情就像看A片,看的人觉得很爽,做的人未必。
http://m.jingdianju.com/wzgs/shenghuo/201307185135.html 转载自: 从这个角度上来说,我不太赞成过于关注第一份工作的薪水,更没有必要攀比第一份工作 ...
- JavaScript依赖注入的实现思路
JavaScript依赖注入的实现思路 如今各个框架都在模块化,连前端的javascript也不例外.每个模块负责一定的功能,模块与模块之间又有相互依赖,那么问题来了:javascript的依赖注入如 ...
- MySQL高级查询语句
高级查询: 一:多表连接 1.select Info.Code,Info.Name,Nation.Name from Info,Nation where Info.Nation = Nation.Co ...
- error: src refspec master does not match any. 错误处理办法
自从上次学了git之后,很少用.今天在使用 本地仓库使用如下命令初始化: $ git init 之后使用如下命令添加远程库: $ git remote add origin git@github.co ...