Redis常用命令总结
在Redis中一共有五种数据类型。
一、String 类型操作
//添加
set key value
//查询
get key
//删除
del key
//拼接
append key value(返回拼接后的字符串的长度)
如果String是数值
//修改数据
incr key (增加1,如果初始值不存在先创建在加1)
incrby key value (相当与i+=value)
decr key (--i)
decrby key value (i-=value)
二、hash数据类型
//添加
hset key filed value (添加索引为key 键为field 值为value的键值对)
hset key filed1 value1 filed2 value2....
//查询
hget key filed (查询键为field的value)
hmget key filed1 filed2 .....(获取多个filed的对应的value)
hkeys key (获取本条数据的所有key)
hvals key (获取本条数据的所有value)
//删除
hdel key filed (删除指定值,如果不存在其他键值对则删除键值对)
del key (删除这条数据的及所有字段)
//修改数据
hincyby key filed increment (针对数值类型的value,增加increment)
//其他
hexists key filed value (判断是是否存在某个键)
三、list集合
//添加
lpush key value1 value2....(数据存储顺序是 valuen ...value2 value1,类似于栈)
rpush key value1 value2 (存入顺序和输入顺序相同,类似与队列)
//查询
lrange key start end (获取链表从start到end的数据 ,链表索引从前往后是从0开始,从后往前是-1开始)
如:查询所有 lrange key 0 -1(第一个到最后一个)
//删除查询
rpop /lpop key(从最后一个/第一个弹出数据)
//删除
lrem key count value (从(前/后取决于cout的正负)位置开始删除cout个value)
//修改
lset key index value (第index个索引的对应的值修改为value)
//插入
linsert key BEFORE|AFTER pivot value (在pivot前或后插入value)
//其他
llen key (返回集合元素个数)
rpoplpush source destination (从resource中弹出一个元素存入destination中)
rpoplpush source source (循环)
四、set集合(不可重复)
//添加
sadd key value1 value2...
//删除
srem key mmber1 mumber2..删除mmber1 mumber2 元素
//查询
smembers key (查询所有元素
sismember key member(判断是否存在)
srandmember key (随机返回一个元素)
//其他
scard key (统计元素个数)
集合运算(交、差、并)
sdiff key1 key2 (返回key1与key2的差集,注:key1key2位置不同结果不同)
sdiffstore destination key1 key2(差集存入destination中)
sinter key1 key2....(交集)
sniter destination key1 key2....(结果存入destination中)
sunion key1 key2 ...(并集)
sunion destination key1 key2 ...(结果存入destination中)
五、zset有序的set(可以做排行榜,原理是给每一个元素都赋予一个权值,根据权值大小排序)
//添加
zadd key score1 member1 score2 member2.。。
//删除
zrem key member
zremrangebyrank key start end (根据排名删除元素:第一名是0)
zremrangebyscore key start end(根据权值删除)
//查询
zscore key member( 返回score)
zrange key start end [withscore](根据索引值查询 ,从小到大)
zrangebyscore key start end(查询从权值从start开始到end的元素,从小到大)
zrevrange key start end [withscores](从大到小查询)
//修改
zincrby key increment member(修改score并返回修改后的score)
//其他
zrank key member (返回元素排名(从小到大))
zrevrank key member(返回元素排名(从大到小))
五、通用命令
keys pattern //查询键 根据一定规则 如* *name....
del key1 key2 ...//删除
existskey key //判断key是否存在
rename key newkey //更改键
type key //返回value的类型
设置有效期
expire key 30 //设置该记录有效期30s
ttl key //查看有效期剩余时间(-2表示已过期删除,-1表示永久)
//消息订阅与发布
subscribe channel
psubscribe pattern //根据pattern监听,可以监听多个频道
publish channel message (发布消息)
ctrl +c/ quit 退出
数据库操作
redis分数据库 不过是系统默认的16个 分别是0 1 。。。15,默认使用的是0
select db 选择数据库
move key db 移动key到db数据库
flushdb //清空当前数据库
flushall //清空redis服务器
事务操作(实质上类似与批处理,并不能保证数据的一致性)
multi 开启事务
exec 提交事务
discard 事务回滚
Redis常用命令总结的更多相关文章
- Redis常用命令
Redis常用命令Redis提供了丰富的命令对数据库和各种数据类型进行操作,这些命令可以再Linux终端使用.1.键值相关命令2.服务器相关命令 一.键值相关命令 1.get get 键值 当 key ...
- 第2讲 Redis常用命令与高级应用
目录 一.redis数据类型 5. sorted sets类型和操作 二.Redis常用命令 1.键值相关命令 2.服务器相关命令 三. redis高级应用 1. 给redis服务器设置密码 2.持久 ...
- Redis常用命令手册:服务器相关命令
Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如各类语言包,这些命令都有对应的方法.下面将Redis提供的命令做一 ...
- redis redis常用命令及内存分析总结(附RedisClient工具简介
redis常用命令及内存分析总结(附RedisClient工具简介 by:授客 QQ:1033553122 redis-cli工具 查看帮助 连接redis数据库 常用命令 exists key se ...
- Redis常用命令与高级应用
附: 127.0.0.1:6379> set xiaofei 小飞 OK 127.0.0.1:6379> get xiaofei "\xe5\xb0\x8f\xe9\xa3\x9 ...
- Redis快速起步及Redis常用命令大全
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...
- redis配置密码 redis常用命令
redis配置密码 1.通过配置文件进行配置yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到 [plain] view plain copy #requi ...
- redis常用命令及持久化机制
redis 常用命令 查找redis服务文件 find / -name redis-server 查找配置文件 find / -name redis.conf 启动服务时候,要指定配置文件 启动r ...
- Redis 常用命令 大全
Redis 常用命令 发现几个很好的 Redis 常用命令汇总大全网页,分享给小伙伴们~ 1.Redis 命令参考 http://redisdoc.com/string/index.html 2.W3 ...
- No-sql之redis常用命令
转自:http://blog.csdn.net/nicewuranran/article/details/51793760 No-SQL之Redis 介绍 Redis是一种基于内存存储的key-val ...
随机推荐
- 剑指Offer-不用加减乘除做加法
package Other; /** * 不用加减乘除做加法 * 写一个函数,求两个整数之和,要求在函数体内不得使用+.-.*./四则运算符号. * 思路:位运算 * 1.两个数异或:相当于每一位相加 ...
- oracle相同SID对外提供多个service_names
为数据库设置多个服务名(通过SCOPE=both设置,同时修改参数文件) SQL> show parameter service_names; NAME TYPE VALUE --------- ...
- 走进webpack(1)--环境拆分及模块化
初级的文章和demo已经基本完成了,代码也已经上传到了我的github上,如果你对webpack的使用并不是十分了解,那么建议你回头看下走近系列,里面包括了当前项目中使用频繁的插件,loader的讲解 ...
- 跨域的另一种解决方案CORS(CrossOrigin Resource Sharing)跨域资源共享
在我们日常的项目开发时使用AJAX,传统的Ajax请求只能获取在同一个域名下面的资源,但是HTML5打破了这个限制,允许Ajax发起跨域的请求.浏览器是可以发起跨域请求的,比如你可以外链一个外域的图片 ...
- 一个shell脚本,让你的linux命令行酷炫起来
可调用如下函数达到echo出来带颜色的文字.._echo_error() { echo -ne "\033[31;1m $1\033[0m\n";}_echo_ok() { ech ...
- Android实用代码七段(三)
正文 一.获取已经安装APK的路径 PackageManager pm = getPackageManager(); for (ApplicationInfo app : pm.getInstall ...
- Tomcat 8启动速度慢原因1: At least one JAR was scanned for TLDs yet contained no TLDs
最近使用tomcat8启动项目时,发现At least one JAR was scanned for TLDs yet contained no TLDs这一步加载时间非常长, 从网上收集了各种资料 ...
- Java基础学习笔记总结
Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...
- 【详细】总结JavaWeb开发中SSH框架开发问题(用心总结,不容错过)
在做JavaWeb的SSH框架开发的时候,遇到过很多的细节问题,这里大概记录下 我使用的IDE是Eclipse(老版本)三大框架:Spring4.Struts2.Hibernate5 1.web.xm ...
- 用virtualenv建立多个Python独立开发环境
不同的人喜欢用不同的方式建立各自的开发环境,但在几乎所有的编程社区,总有一个(或一个以上)开发环境让人更容易接受. 使用不同的开发环境虽然没有什么错误,但有些环境设置更容易进行便利的测试,并做一些重复 ...