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操作的更多相关文章

  1. python操作redis之String操作

    # __author__ = 'STEVEN' import redis,time # 方式1,直接链接操作 # r = redis.Redis(host='192.168.43.22',port=6 ...

  2. (二)Redis字符串String操作

    String全部命令如下: set key value # 设置一个key的value值 get key # 获取key的value值 mset key1 value1 key2 value2 ... ...

  3. redis对string进行的相关操作

    redis对string类型操作的相关命令以及如何在python使用这些命令 redis对string类型操作的命令: 命令 语法 概述 返回值 Redis SET 命令  set key value ...

  4. 缓存数据库-redis数据类型和操作(string)

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合) 一:String(字符串) string是redis ...

  5. PHP操作redis之String(字符串)、List(列表)(一)

    Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key – value 缓存产品有以下三个特点: Redis支持数据的持久 ...

  6. Python操作redis字符串(String)详解 (三)

    # -*- coding: utf-8 -*- import redis #这个redis不能用,请根据自己的需要修改 r =redis.Redis(host=") 1.SET 命令用于设置 ...

  7. redis的String类型以及其操作

    Redis的数据类型 String类型以及操作 String是最简单的数据类型,一个key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比如jpg图片或 ...

  8. Redis一(Redis-py与String操作)

    Redis 介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(so ...

  9. Redis源码之String操作

    0.前言 String操作是Redis操作中最基本的类型,包含get,set,mget,mset,append等等.下面我们会具体分析下一些命令的详细流程,特么简单的命令没有列出. 1.SET命令 2 ...

随机推荐

  1. Sqrt(x)

    Implement int sqrt(int x). Compute and return the square root of x. 参考:http://standalone.iteye.com/b ...

  2. pxe+preseed安装配置(2)

    1.tftp使用独立daemon,这样不用再安装xinet, apt-get install tftp-hpa tftpd-hpa cat /etc/default/tftpd-hpa TFTP_US ...

  3. Chapter 3 Discovering Classes and Object

    Chatper 3 Discovering Classes and Object Exercises: 1.What is a class? A class is a template for man ...

  4. 简述负载均衡&CDN技术

    曾经见到知乎上有人问“为什么像facebook这类的网站需要上千个工程师维护?”,下面的回答多种多样,但总结起来就是:一个高性能的web系统需要从无数个角度去考虑他,大到服务器的布局,小到软件中某个文 ...

  5. map线程

    来看看map线程到底是如何运行的 很早就知道一个map是一个线程,以后有可能改成一个map一个进程,那就先来看看一个map一个线程是如何运作的 其实刚开始整个服务器就是两个线程,但发现这样服务器支持的 ...

  6. 华农js抢课神器

    又到了华农选课的时候,服务器估计就受不了,每天奔溃几次,这次选课贪心了点,竟然选了5门,好吧,我承认我只中了1门,什么??刚刚换课给同学马上就被人抢了?我来告诉你原因吧,最近发现一位大神写了一份js脚 ...

  7. AngularJs学习笔记--directive

    原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ...

  8. HDOJ 1028 Ignatius and the Princess III (母函数)

    Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K ...

  9. 编写更好的CSS

    编写好的CSS代码能提升页面的渲染速度.本质上,一条规则都没有引擎解析的最快.MDN上将CSS选择符归拆分成四个主要类别,如下所示,性能依次降低. ID 规则 Class 规则 标签规则 通用规则 对 ...

  10. Codeforces 475D CGCDSSQ(分治)

    题意:给你一个序列a[i],对于每个询问xi,求出有多少个(l,r)对使得gcd(al,al+1...ar)=xi. 表面上是询问,其实只要处理出每个可能的gcd有多少个就好了,当左端点固定的时候,随 ...