redis:string字符串类型的操作
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字符串类型的操作的更多相关文章
- StackExchange.Redis帮助类解决方案RedisRepository封装(字符串类型数据操作)
本文版权归博客园和作者本人共同所有,转载和爬虫请注明原文链接 http://www.cnblogs.com/tdws/tag/NoSql/ 目录 一.基础配置封装 二.String字符串类型数据操作封 ...
- python之Redis的字符串类型操作
redis的数据类型: 字符串型 哈希 列表 集合 有序集合 1.String(字符串类型) set 命令: 设置一个键和值,键存在则只覆盖,返回ok > s ...
- 第二百九十五节,python操作redis缓存-字符串类型
python操作redis缓存-字符串类型 首先要安装redis-py模块 python连接redis方式,有两种连接方式,一种是直接连接,一张是通过连接池连接 注意:以后我们都用的连接池方式连接,直 ...
- redis数据类型-字符串类型
Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...
- redis之(四)redis的字符串类型的命令
[一]获得符合规则的键名列表 -->命令 keys [pattern] -->keys命令需要遍历Redis中所有的键,当键的数量比较多会影响性能,生产环境不建议用 -->pat ...
- 数据类型总结——String(字符串类型)
相关文章 简书原文:https://www.jianshu.com/p/546a755c3eb6 数据类型总结——概述:https://www.cnblogs.com/shcrk/p/9266015. ...
- Python学习笔记(三)字符串类型及其操作(2)
1.字符串的表示 字符串是字符的序列表示,可以由一对单引号(‘).双引号(“)或三引号(’‘’)构成.其中,单引号.双引号和三引号都可以表示单行字符串,但是只有三引号可以表示多行字符串 在使用双引号时 ...
- C#操作Redis String字符串
/// <summary> /// Redis String 操作 /// </summary> public static void Redis_String() { Red ...
- Redis入门---字符串类型
阅读目录 1.keys * 命令 2.判断一个键是否存在(exists key) 3.删除键 4.获取键值的数据类型 5 递增数字(incr) 6.增加指定的整数 (INCRBY) 7.减少指定的整数 ...
随机推荐
- Task任务的屏障机制
Barrier 是 .Net 提供的一直并发的机制,它允许多个任务同步他们不同阶段的并发工作. 这里的关键点是[多个任务]和[不同阶段]. 假设有4个相同的任务(Task),每个任务都有4个阶段(Ph ...
- MySql-8.0.12 安装教程
MySql-8.0.12 安装教程随笔https://www.cnblogs.com/CrazyDemo/p/9409995.html MySQL 安装https://m.runoob.com/mys ...
- win10远程桌面出现身份验证错误。要求的函数不受支持
打开组策略,依次展开“计算机配置”->“管理模板”->“系统”->“凭据分配”,设置名称: “加密 Oracle 修正” 为已启用,并设置保护级别为“易受攻击”
- Codeforces 196E Opening Portals MST (看题解)
Opening Portals 我们先考虑如果所有点都是特殊点, 那么就是对整个图求个MST. 想在如果不是所有点是特殊点的话, 我们能不能也 转换成求MST的问题呢? 相当于我们把特殊点扣出来, 然 ...
- 使用ycsb对hbase0.94.11 benchmark
Ycsb下载地址:https://github.com/brianfrankcooper/YCSB/releases 目前测试hbase0.94.11,因此下载ycsb-0.1.4.tar.gz 1. ...
- 网页安全政策"(Content Security Policy,缩写 CSP)
作者:阿里聚安全链接:https://www.zhihu.com/question/21979782/answer/122682029来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载 ...
- jQuery懒加载插件 – jquery.lazyload.js简单调用
Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预 ...
- IDEA创建SpringBoot项目
创建SpringBoot有三种方式: 方式一:(常用方式)
- C语言中的模运算-hdu6124(打表,找规律)
题目链接:https://vjudge.net/problem/HDU-6124 题目描述: 题目大意就是给你一个数,判断这个数 % 其它数后共有几种结果. 这题对我来说最大的难点是我不太知道每个数 ...
- 20165220预备作业3 Linux安装及学习
首先对于这第三次作业而言,给我的准备时间确实不多,因为过年回老家6天,没有办法及时的进行学习和思考,回到家中便草草的看了下相关操作跟教程从而完成了作业,这次主要是学习一些基础操作,为开学的Java学习 ...