Redis的String操作
set key value [ex 秒数] / [px 毫秒数] [nx] /[xx] 如: set a 1 ex 10 , 10秒有效 Set a 1 px 9000 , 9秒有效 注: 如果ex,px同时写,以后面的有效期为准 如 set a 1 ex 100 px 9000, 实际有效期是9000毫秒 nx: 表示key不存在时,执行操作 xx: 表示key存在时,执行操作 127.0.0.1:6379> set site www.so.com OK 127.0.0.1:6379> set site www.baidu.com nx (nil) 127.0.0.1:6379> get site "www.so.com" 127.0.0.1:6379> set site www.google.com xx OK 127.0.0.1:6379> get site "www.google.com"
mset multi set , 一次性设置多个键值 例: mset key1 v1 key2 v2 .... get key 作用:获取key的值 mget key1 key2 ..keyn 作用:获取多个key的值 127.0.0.1:6379> mset a aman b bold c controller OK 127.0.0.1:6379> keys * 1) "a" 2) "c" 3) "b" 127.0.0.1:6379> get a "aman" 127.0.0.1:6379> get b "bold" 127.0.0.1:6379> get c "controller" 127.0.0.1:6379> mget a b c 1) "aman" 2) "bold" 3) "controller"
setrange key offset value 作用:把字符串的offset偏移字节,改成value 127.0.0.1:6379> set word hello OK 127.0.0.1:6379> get word "hello"
| 0 | 1 | 2 | 3 | 4 |
| h | e | l | l | o |
127.0.0.1:6379> setrange word 2 ?? (integer) 5 127.0.0.1:6379> get word "he??o"
注意: 如果偏移量>字符长度, 该字符自动补0x00
127.0.0.1:6379> set word hello
OK
127.0.0.1:6379> get word
"hello"
127.0.0.1:6379> setrange word 6 !
(integer) 7
127.0.0.1:6379> get word
"hello\x00!"
append key value 作用: 把value追加到key的原值上 127.0.0.1:6379> get word "hello\x00!" 127.0.0.1:6379> append word @@ (integer) 9 127.0.0.1:6379> get word "hello\x00!@@"
getrange key start stop 作用: 是获取字符串中 [start, stop]范围的值 注意: 对于字符串的下标,左数从0开始,右数从-1开始 127.0.0.1:6379> set area chinese OK 127.0.0.1:6379> getrange area 1 4 "hine"
| -7 | -6 | -5 | -4 | -3 | -2 | -1 |
| w | o | r | k | i | n | g |
127.0.0.1:6379> set status working OK 127.0.0.1:6379> get status "working" 127.0.0.1:6379> getrange status 0 -4 "work"
注意:
1: start>=length, 则返回空字符串
2: stop>=length,则截取至字符结尾
3: 如果start 所处位置在stop右边, 返回空字符串
getset key newvalue 作用: 获取并返回旧值,设置新值 127.0.0.1:6379> set status sleep OK 127.0.0.1:6379> getset status wakeup "sleep" 127.0.0.1:6379> get status "wakeup"
incr key 作用: 指定的key的值加1,并返回加1后的值 注意: 1:不存在的key当成0,再incr操作 2: 范围为64有符号 decr key 作用: 指定的key的值减1,并返回减1后的值 incrby key number decrby key number 127.0.0.1:6379> set age 29 OK 127.0.0.1:6379> incr age (integer) 30 127.0.0.1:6379> decr age (integer) 29 127.0.0.1:6379> incrby age 5 (integer) 34 127.0.0.1:6379> incrby age 5 (integer) 39 127.0.0.1:6379> decrby age 10 (integer) 29
setbit key offset value 设置offset对应二进制位上的值 返回: 该位上的旧值可实现大小写转换
| A | 65 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
| a | 97 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 1 |
127.0.0.1:6379> set char A OK 127.0.0.1:6379> get char "A" 127.0.0.1:6379> setbit char 2 1 (integer) 0 127.0.0.1:6379> get char "a" 127.0.0.1:6379> set char B OK 127.0.0.1:6379> get char "B" 127.0.0.1:6379> setbit char 2 1 (integer) 0 127.0.0.1:6379> get char "b"
Redis的String操作的更多相关文章
- python操作redis之String操作
# __author__ = 'STEVEN' import redis,time # 方式1,直接链接操作 # r = redis.Redis(host='192.168.43.22',port=6 ...
- (二)Redis字符串String操作
String全部命令如下: set key value # 设置一个key的value值 get key # 获取key的value值 mset key1 value1 key2 value2 ... ...
- redis对string进行的相关操作
redis对string类型操作的相关命令以及如何在python使用这些命令 redis对string类型操作的命令: 命令 语法 概述 返回值 Redis SET 命令 set key value ...
- 缓存数据库-redis数据类型和操作(string)
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合) 一:String(字符串) string是redis ...
- PHP操作redis之String(字符串)、List(列表)(一)
Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key – value 缓存产品有以下三个特点: Redis支持数据的持久 ...
- Python操作redis字符串(String)详解 (三)
# -*- coding: utf-8 -*- import redis #这个redis不能用,请根据自己的需要修改 r =redis.Redis(host=") 1.SET 命令用于设置 ...
- redis的String类型以及其操作
Redis的数据类型 String类型以及操作 String是最简单的数据类型,一个key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比如jpg图片或 ...
- Redis一(Redis-py与String操作)
Redis 介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...
- Redis源码之String操作
0.前言 String操作是Redis操作中最基本的类型,包含get,set,mget,mset,append等等.下面我们会具体分析下一些命令的详细流程,特么简单的命令没有列出. 1.SET命令 2 ...
随机推荐
- pspo
一.项目计划总结: 周活动总结表 姓名: 日期:3.12.2015 日期 任务 听课 编写程序 阅读课本 准备考试 日总计 周日 周一 周二 周三 10:00- ...
- 【Search Insert Position 】cpp
题目: Given a sorted array and a target value, return the index if the target is found. If not, return ...
- C#格式化JSON字符串
很多时候我们需要将json字符串以 { "status": 1, "sum": 9 }这种方式显示,而从服务端取回来的时候往往是这样 {&quo ...
- 使用HTML5中的element.dataset操作自定义data-*数据
不久之前我向大家展示了非常有用的classList API,它是一种HTML5里提供的原生的对页面元素的CSS类进行增.删改的接口,完全可以替代jQuery里的那些CSS类操作方法.而另外一个非常有用 ...
- IDEA for Mac 解决控制台乱码问题
近期发现 idea for mac 版本中 tomcat 控制台有中文的地方出现乱码问题,其实很简单就可以解决. 这里做个笔记,以后可以方便不会的人来解决 ---------------------- ...
- hdu 1853 Cyclic Tour 最小费用最大流
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1853 There are N cities in our country, and M one-way ...
- BZOJ: 1084: [SCOI2005]最大子矩阵
NICE 的DP 题,明白了题解真是不错. Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1228 Solved: 622[Submit][Stat ...
- dedecms还原数据时要选对备份目录 不然会提示function文件出错
小李子最近在学习dedecms,在网上下载了一个二次开发的系统,顺利安装后想要还原一下作者的备份数据,可一直没有成功,让ytkah查看一下什么情况.进到后台,点击还原,提示/e/class/funct ...
- 【高可用HA】Apache (1) —— Mac下安装Apache Httpd到自定义路径(非/etc/apache2)
Mac下安装Apache Httpd httpd版本: httpd-2.4.17 参考来源: Tomcat Clustering - A Step By Step Guide Apache HTTP ...
- PHP合并数组array_merge函数运算符加号与的区别
两个的区别是:1.数组键名为数字键名时,要合并的两个数组中有同名数字KEY的时候,使用array_merge()不会覆盖掉原来的值,而使用“+”合并数组则会把最先出现的值作为最终结果返回,而把后面的数 ...