Redis之String
介绍
Redis的String类型可以是字符串(简单的字符串、复杂的字符串(例如JSON、XML))、数字(整数、浮点数),甚至是二进制(图片、音频、视频),但是值最大不能超过512MB;
使用下面的命令查看手册:
1
help @string
命令行模式
进入命令行模式:
1
2
3redis-cli -a password_value
redis-cli -a password_value --raw
--raw 避免中文显示乱码
常用命令
exist
判断key存在, 返回true / false, 1/0
1
exists key
増
命令 | 说明 |
---|---|
set |
添加键值对 NX:当数据库中 key 不存在时,可以将 key-value 添加数据库 XX:当数据库中 key 存在时,可以将 key-value 添加数据库,与 NX 参数互斥 EX:key 的超时秒数 PX:key 的超时毫秒数,与 EX 互斥 |
setex |
设置键值的同时,设置过期时间,单位秒 |
psetex key EXPIRY_IN_MILLISECONDS value | 以毫秒为单位设置 key 的生存时间。 |
setnx |
只有在 key 不存在时设置 key 的值 |
mset key1 value1 [key2 value2…] | 批量创建kv,已存在的会被更新 |
msetnx key1 value1 [key2 value2…] # | 批量创建kv,所有key不存在才会创建 |
删
使用del命令删除数据,可批量可单个删除:
1
del key1 [key2 key3...]
改
命令 | 说明 |
---|---|
set |
如果对同一个key进行set即可更新该数据 |
getset |
以新换旧,设置了新值同时获得旧值,下次再get的时候查到的就是新的value |
setrange |
用 |
append |
将给定的 |
mset |
同时设置一个或多个 key-value 对 |
msetnx |
同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在原子性,有一个失败则都失败 |
1 | redis 127.0.0.1:6379> SET key1 "Hello World" |
查
命令 | 说明 |
---|---|
keys PATTERN | 符合给定模式的 key 列表 (Array)。 KEYS * 查所有 |
get |
查询对应键值 |
getset |
以新换旧,设置了新值同时获得旧值 |
getrange |
获得值的范围,类似 java 中的 substring,[start,end],从0开始 |
mget |
同时获取一个或多个 value |
strlen |
获得值的长度 |
计数
命令 | 说明 |
---|---|
incr |
将 key 中储存的数字值增 1(原子操作)只能对数字值操作 如果key不存在,其初始值为0,在incr之后其值为1 如果value的值不能转为整型,如hello,该操作将执行失败并返回相应的错误信息 |
decr |
将 key 中储存的数字值减 1(原子操作)只能对数字值操作 如果key不存在,其初始值为0,在decr之后其值为-1 如果value的值不能转为整型,如hello,该操作将执行失败并返回相应的错误信息 |
incrby / decrby |
将 key 中储存的数字值增减。自定义步长(原子操作) |
incrbyfloat | 效果与incrby类似,此方法支持传浮点型的值,正数为增,负数为减 |
1 | # 值和增量都不是指数符号 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 凉月の博客!
评论