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. Unity3D定制新建C#文件的头描述

    1. 修改模板内容如下: MAC:Unity.app/Contents/Resources/ScriptTemplates/81-C# Script-NewBehaviourScript.cs.txt ...

  2. cocos2dx中如何从一张图片中切割一部分显示成小图片

    1.通常我们拿到的资源中,通常都是许多张小图片压缩到一张图片里了,我们如何在使用的时候把它切割出来呢? 2.例如我们要把上面这张图片按组分隔开来 CCSprite* newGameNormal = C ...

  3. Android -- 分享功能和打开指定程序

    打开指定程序                                                                                Intent intent ...

  4. java7新特新(一) Try-with-resources (TWR)

    Try-with-resources (TWR) 在处理IO的代码中,我们会使用大量的try...catch()...finally...语法,其中会在finally进行IO的close操作,写过py ...

  5. js如何获取select下拉框的value以及文本内容

    select下拉框在项目开发中是经常用到的,特别是在联级菜单方面的应用更为广泛.但是,对于一些初学者来说,如何获取下拉框子节点option的value值和文本内容,还是有一点难度的.其他的就不说了,现 ...

  6. 使用JavaScript+Html创建win8应用(一)

            最近在学习win8 metro app的开发,今天刚刚学了一个小的例子,分享一下 开始之前你需要准备... 1.开发win8应用需要具备Windows 8 和 Microsoft Vi ...

  7. Careercup - Microsoft面试题 - 6314866323226624

    2014-05-11 05:29 题目链接 原题: Design remote controller for me. 题目:设计一个遥控器. 解法:遥控什么?什么遥控?传统的红外线信号吗?我只能随便说 ...

  8. C语言遇到的错误和解决方案~~~持续更新,记录成长的过程

    1.error C2296: '&' : illegal, left operand has type 'char [3]' scanf("%d" &x); 少了一 ...

  9. android编程常见问题- Resource ID #0x7f070001 type #0x12 is not valid

    问题说明: AndroidRuntime(1705): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.e ...

  10. [转载]Sublime Text 3 搭建 React.js 开发环境

    [转载]Sublime Text 3 搭建 React.js 开发环境 Sublime有很强的自定义功能,插件库很庞大,针对新语言插件更新很快,配合使用可以快速搭建适配语言的开发环境. 1. babe ...