Redis数据类型(字符串)
2024-08-29 12:52:42
Redis存放的字符串为二进制是安全的。字符串长度支持到512M。
incr
递增数字INCR key
当存储的字符串是整数时,redis提供了一个实用的命令INCR,其作用是让当前键值递增,并返回递增后的值。
从例子可以看出,如果num不存在,则自动会创建,如果存在自动+1。
127.0.0.1:6379> keys *
1) "test1"
2) "test"
127.0.0.1:6379> get test
"123"
127.0.0.1:6379> get test1
"abc"
127.0.0.1:6379> get test2
(nil)
127.0.0.1:6379> incr num
(integer) 1
127.0.0.1:6379> keys *
1) "num"
2) "test1"
3) "test"
127.0.0.1:6379> incr num
(integer) 2
127.0.0.1:6379> incr num
(integer) 3
127.0.0.1:6379>
incrby
指定增长系数
127.0.0.1:6379> incr num
(integer) 2
127.0.0.1:6379> incr num
(integer) 3
127.0.0.1:6379> incrby num 2
(integer) 5
127.0.0.1:6379> incrby num 2
(integer) 7
127.0.0.1:6379> incrby num 2
(integer) 9
127.0.0.1:6379> incr num
(integer) 10
127.0.0.1:6379>
decr / decrby
减少指定的整数
127.0.0.1:6379> incr num
(integer) 10
127.0.0.1:6379> decr num
(integer) 9
127.0.0.1:6379> decrby num 3
incrbyfloat
整数时,第一次加可以得到正确结果,浮点数后再加浮点就会出现精度问题。
原来下面的例子是2.8.7版本
注意在新版本3.0.7中已经修正了这个浮点精度问题。
127.0.0.1:6379> set num
(integer) 131
127.0.0.1:6379> incrfloat num 0.7
“131.7”
127.0.0.1:6379> incrfloat num 0.7
“132.3999999999999999”
append
向尾部追加值。如果键不存在则创建该键,其值为写的value,即相当于SET key value。
返回值是追加后字符串的总长度。
127.0.0.1:6379> keys *
1) "num"
2) "test1"
3) "test"
127.0.0.1:6379> get test
"123"
127.0.0.1:6379> append test "abc"
(integer) 6
127.0.0.1:6379> get test
"123abc"
127.0.0.1:6379>
strlen
字符串长度,返回数据的长度,
如果键不存在则返回0。
如果键值为空串,返回也是0。
127.0.0.1:6379> get test
"123abc"
127.0.0.1:6379> strlen test
(integer) 6
127.0.0.1:6379> strlen tnt
(integer) 0
127.0.0.1:6379> set tnt ""
OK
127.0.0.1:6379> strlen tnt
(integer) 0
127.0.0.1:6379> exists tnt
(integer) 1
127.0.0.1:6379>
mset/mget
同时设置/获取多个键值
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> mset a 1 b 2 c 3
OK
127.0.0.1:6379> mget a b c
1) "1"
2) "2"
3) "3"
127.0.0.1:6379>
最新文章
- 制作nginx和php的rpm包
- MYSQL C API : mysql_init()
- 小小的封装了一个pie的echarts
- c++sort函数的用法浅析
- 总结: Struts2 + Spring 的线程安全问题
- Thinkphp 框架基础
- html天气预报小插件
- Elcipse安装gradle插件
- vitualbox中的centos7与主机共享文件
- rabbitmq web 管理系统的信息
- [Java] 練習用對戰小遊戲
- 数据结构 BM算法
- x-pack
- sailsjs learning note
- 跟着刚哥学习Spring框架--通过XML方式配置Bean(三)
- git命令--git checkout 之 撤销提交到暂存区的更改
- Python函数-logging.basicConfig
- C# 集合-并发处理-锁OR线程 (转载)
- 分布式开放消息系统RocketMQ的原理与实践(消息的顺序问题、重复问题、可靠消息/事务消息)
- 项目Beta冲刺(团队)第五天