1. string字符串类型的操作:

1.1. set 设置单个值

语法:set key value [EX seconds] [PX milliseconds] [NX|XX]

注:

EX seconds 设置key的生命周期(有效期)(以秒数为单位)

PX milliseconds 表示key的生命周期(有效期)(以毫秒为单位)

NX  (not exists)表示key不存在时设置

XX 表示key已存在时才设置

例:

127.0.0.1:6379> set name 'wang' ex 15

OK

127.0.0.1:6379> ttl name

(integer) 13

127.0.0.1:6379> ttl name

(integer) 10

127.0.0.1:6379> set name 'yang' px 3000

OK

127.0.0.1:6379> ttl name

(integer) -2

127.0.0.1:6379> ttl name

(integer) -1

127.0.0.1:6379> set name 'zhao' ex 20

OK

127.0.0.1:6379> ttl name

(integer) 17

127.0.0.1:6379> set animal 'cat'

OK

127.0.0.1:6379> ttl animal

(integer) -1

127.0.0.1:6379> set animal 'dog' nx

(nil)

127.0.0.1:6379> set animal 'dog' xx

OK

127.0.0.1:6379>

注:ex、px不能同时写

127.0.0.1:6379> set animal cat ex 10 px 7000

(error) ERR syntax error

1.2. mset 设置多个值

语法:mset key value [key value ...]

例:

127.0.0.1:6379> mset a apple b banana c crow d dog

OK

127.0.0.1:6379> keys *

1) "c"

2) "a"

3) "animal"

4) "b"

5) "d"

1.3. get 获取单个值

语法:get key

例:

127.0.0.1:6379> mset a apple b banana c crow d dog

OK

127.0.0.1:6379> get a

"apple"

127.0.0.1:6379> get b

"banana"

1.4. mget 获取多个值

语法:mget key [key ...]

例:

127.0.0.1:6379> mset a apple b banana c crow d dog

OK

127.0.0.1:6379> mget a b d

1) "apple"

2) "banana"

3) "dog"

1.5. setrange key offset value

语法:setrange key offset value

作用:把key的值偏移量offset,开始替换为value

注:

Offset 是偏移量,可以大于key的最大长度(

例:

127.0.0.1:6379> set word hello

OK

127.0.0.1:6379> get word

"hello"

127.0.0.1:6379> setrange word 2 ??

(integer) 5

127.0.0.1:6379> get word

"he??o"

1.6. getrange key start end 获取key的指定范围的字符

语法:getrange key start end

作用:获取字符串中[start,end]范围的值

注:

start 开始索引号 (从0开始,闭区间);如果start大于end

end  结束索引号 (到end结束,闭区间,右数从-1开始)

Start>=length,返回空字符串

end>=length,截取至字符结尾

如果start所处位置在end右边,返回空字符

例:

127.0.0.1:6379> set fruit orange

OK

127.0.0.1:6379> get fruit

"orange"

127.0.0.1:6379> getrange fruit 1 4

"rang"

127.0.0.1:6379> set status working

OK

127.0.0.1:6379> getrange status 0 -3

"worki"

127.0.0.1:6379> getrange status 0 -4

"work"

1.7. getset key newvalue

语法:getset key value

作用:获取并返回旧值,设置新值

127.0.0.1:6379> set fruit orange

OK

127.0.0.1:6379> get fruit

"orange"

127.0.0.1:6379> getset fruit apple

"orange"

127.0.0.1:6379> get fruit

"apple"

127.0.0.1:6379> getset fruit 'banana'

"apple"

1.8. incr 键值(key)增加1

语法:incr key

注:

不存在的key当成0,再incr操作

范围为64有符号

例:

127.0.0.1:6379> set age 20

OK

127.0.0.1:6379> incr age

(integer) 21

1.9. incrby key number 增加自定义的数

语法:incrby key increment

例:

127.0.0.1:6379> incrby age 5

(integer) 25

1.10. incrbyfloat key floatnumber 增加一个浮点数

语法:incrbyfloat key increment

例:

127.0.0.1:6379> set score 80

OK

127.0.0.1:6379> get score

"80"

127.0.0.1:6379> incrbyfloat score 3.5

"83.5"

127.0.0.1:6379> get score

"83.5"

redis:string字符串类型的操作的更多相关文章

  1. StackExchange.Redis帮助类解决方案RedisRepository封装(字符串类型数据操作)

    本文版权归博客园和作者本人共同所有,转载和爬虫请注明原文链接 http://www.cnblogs.com/tdws/tag/NoSql/ 目录 一.基础配置封装 二.String字符串类型数据操作封 ...

  2. python之Redis的字符串类型操作

    redis的数据类型: 字符串型    哈希     列表     集合     有序集合 1.String(字符串类型) set  命令:   设置一个键和值,键存在则只覆盖,返回ok > s ...

  3. 第二百九十五节,python操作redis缓存-字符串类型

    python操作redis缓存-字符串类型 首先要安装redis-py模块 python连接redis方式,有两种连接方式,一种是直接连接,一张是通过连接池连接 注意:以后我们都用的连接池方式连接,直 ...

  4. redis数据类型-字符串类型

    Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...

  5. redis之(四)redis的字符串类型的命令

    [一]获得符合规则的键名列表  -->命令  keys [pattern] -->keys命令需要遍历Redis中所有的键,当键的数量比较多会影响性能,生产环境不建议用 -->pat ...

  6. 数据类型总结——String(字符串类型)

    相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...

  7. Python学习笔记(三)字符串类型及其操作(2)

    1.字符串的表示 字符串是字符的序列表示,可以由一对单引号(‘).双引号(“)或三引号(’‘’)构成.其中,单引号.双引号和三引号都可以表示单行字符串,但是只有三引号可以表示多行字符串 在使用双引号时 ...

  8. C#操作Redis String字符串

    /// <summary> /// Redis String 操作 /// </summary> public static void Redis_String() { Red ...

  9. Redis入门---字符串类型

    阅读目录 1.keys * 命令 2.判断一个键是否存在(exists key) 3.删除键 4.获取键值的数据类型 5 递增数字(incr) 6.增加指定的整数 (INCRBY) 7.减少指定的整数 ...

随机推荐

  1. UEditor黑白名单配置

    在网上找了很多,都不对.自己尝试,代码如下: 在new UEditor之前加上: Object.assign(window.UEDITOR_CONFIG.whitList, { filling: [' ...

  2. 关于 java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.String

    今天遇到了这个异常,其实是自己经验欠缺所致.我是通过mybatis查询到数据库传过来的主键,是一个32位的char类型. 代码: //查询总账表的该组织总账记录,包括该条记录的主键id.账户余额Dzz ...

  3. 使用docker部署.net core应用

    CentOS 使用VS2017新建一个asp.net core项目 发布web应用程序 使用FTP工具,将程序文件copy到linux上 XShell连上linux并登陆 cd /CoreWebDem ...

  4. ssh登陆linux服务器 实际场景讲解 让你管理服务器更安全

    很多时候我们管理linux系统,都谁使用ssh登陆,因为都知道ssh是加密传输的协议的,可以有效保证我们与 服务器之间的数据通信安全.但是我们忽略了一点,但是登陆的时候我们是输入的账号和密码,这一点其 ...

  5. 如何在grails2.3.x中的fork模式下进行调试?-【grails】

    grails2.3.x中默认情况下运行模式被设置成了fork模式,在这种模式下,大家会发现设置了断点后无法进行中断.这是由于fork模式造成的,因为在fork模式下,JVM新起了一个进程,这样调试器就 ...

  6. 一起学Hive——详解四种导入数据的方式

    在使用Hive的过程中,导入数据是必不可少的步骤,不同的数据导入方式效率也不一样,本文总结Hive四种不同的数据导入方式: 从本地文件系统导入数据 从HDFS中导入数据 从其他的Hive表中导入数据 ...

  7. 【Android】ContentValues的用法

    ContentValues 和HashTable类似都是一种存储的机制 但是两者最大的区别就在于,contenvalues只能存储基本类型的数据,像string,int之类的,不能存储对象这种东西,而 ...

  8. 1000. A+B Problem

    Description Calculate a+b Input Two integer a,b (0<=a,b<=10) Output Output a+b Sample Input 1 ...

  9. Flask---第二个例子--Get和POST发送

    *get:浏览器告诉服务器,我只需要获取页面信息给我,这是最简单最常用的方法 *Post:览器告诉服务器:想在 URL 上 发布 新信息.并且,服务器必须确保 数据已存储且仅存储一次.这是 HTML ...

  10. sql 将一列一逗号分隔拼成字符串

    select stuff((select ','+w.Waybillno from Web_Way_Waybill w where w.IsValid<>'Y' AND w.TruckOr ...