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. windows解压.tar00文件

    通常是单个文件太大分拆出来的,例如data.tar00, data.tar01, data.tar02等 cmd命令行进入几个tar0x文件所在目录,执行: copy /b data.tar0* da ...

  2. SqlServer 分页存储过程

    SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[usp_CommonDataResourcePaged ...

  3. eclipse工具下hadoop环境搭建

    eclipse工具下hadoop环境搭建:    window10操作系统中搭建eclipse64开发系统,配置hadoop的eclipse插件,让eclipse可以查看Hdfs中的文件内容.     ...

  4. Spring boot+CXF开发WebService Demo

    最近工作中需要用到webservice,而且结合spring boot进行开发,参照了一些网上的资料,配置过程中出现的了一些问题,于是写了这篇博客,记录一下我这次spring boot+cxf开发的w ...

  5. 从oracle导出数据成csv,将csv导入mongodb问题

  6. LVM管理之减少LV的大小

    LVM管理之减少LV的大小 规定动作 1.umount filesystem 2.e2fsck filesystem 3.resize2fs filesystem 4.lvredure 实例演示——— ...

  7. Ajax+PHP实现异步上传多张图片

    Ajax+PHP实现异步上传多张图片 HTML代码 <!-- date: 2018-04-27 13:46:55 author: 王召波 descride: 多张图片上传 --> < ...

  8. sql 表值函数-将一个传入的字符串用2中分隔符拆分成临时表

    USE [tms]GO/****** Object: UserDefinedFunction [dbo].[fn_StrToTable_Double] Script Date: 2017/4/26 9 ...

  9. JavaScript项目重构到底有多少坑要填要踩

    看到代码的那一刻我惊呆了,就一个js文件,接近2000行的代码.这个还好,比这个行数多的我见的多了,这个还吓不到我.有哪些问题,一会再说. 因为从我接手的那一刻算起,几天后就要发新版本,我只要也只能调 ...

  10. LeetCode 234. 回文链表

    class Solution { public: bool isPalindrome(ListNode* head) { deque<int> d1, d2; ListNode* p = ...