一步一步学习Redis——五大数据类型之字符串(String)的相关命令

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 一步一步学习Redis——五大数据类型之字符串(String)的相关命令

文章目录:


1.开篇

语法

2.Redis字符串(String)的相关命令

2.1 SET命令

语法

返回值

2.2 GET命令

语法

返回值

2.3 MSET命令

语法

返回值

2.4 MGET命令

语法

返回值

2.5 SETNX命令

语法

返回值

2.6 MSETNX命令

语法

返回值

2.7 SETRANGE命令 

语法

返回值

2.8 GETRANGE命令

语法

返回值

2.9 GETSET命令

语法

返回值

2.10 SETBIT命令

语法

返回值

2.11 GETBIT命令 

语法

返回值

2.12 SETEX命令

语法

返回值

2.13 PSETEX命令

语法

返回值

2.14 STRLEN命令

语法

返回值

2.15 INCR命令

语法

返回值

2.16 INCRBY命令

语法

返回值

2.17 DECR命令

语法

返回值

2.18 DECRBY命令

语法

返回值

2.19 APPEND命令

语法

返回值


1.开篇


Redis字符串数据类型的相关命令用于管理 redis 字符串值,基本语法如下:

语法

redis 127.0.0.1:6379> COMMAND KEY_NAME

2.Redis字符串(String)的相关命令


序号

命令及描述

1

SET key value
设置指定 key 的值

2

GET key
获取指定 key 的值。

3

GETRANGE key start end
返回 key 中字符串值的子字符

4

GETSET key value
将给定 key 的值设为 value ,并返回 key 的旧值(old value)

5

GETBIT key offset
key 所储存的字符串值,获取指定偏移量上的位(bit)

6

MGET key1 [key2...]
获取所有(一个或多个)给定 key 的值。

7

SETBIT key offset value
key 所储存的字符串值,设置或清除指定偏移量上的位(bit)

8

SETEX key seconds value
将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)

9

SETNX key value
只有在 key 不存在时设置 key 的值。

10

SETRANGE key offset value
value 参数覆写给定 key 所储存的字符串值,从偏移量 offset 开始。

11

STRLEN key
返回 key 所储存的字符串值的长度。

12

MSET key value [key value...]
同时设置一个或多个 key-value 对。

13

MSETNX key value [key value...]
同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。

14

PSETEX key milliseconds value
这个命令和 SETEX 命令相似,但它以毫秒为单位设置 key 的生存时间,而不是像 SETEX 命令那样,以秒为单位。

15

INCR key
key 中储存的数字值增一。

16

INCRBY key increment
key 所储存的值加上给定的增量值(increment

17

INCRBYFLOAT key increment
key 所储存的值加上给定的浮点增量值(increment

18

DECR key
key 中储存的数字值减一。

19

DECRBY key decrement
key
所储存的值减去给定的减量值(decrement

20

APPEND key value
如果 key 已经存在并且是一个字符串, APPEND 命令将指定的 value 追加到该 key 原来值(value)的末尾。


2.1 SET命令

Redis SET 命令用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。

语法

redis 127.0.0.1:6379> SET KEY_NAME VALUE

返回值

Redis 2.6.12 以前版本, SET 命令总是返回 OK

Redis 2.6.12 版本开始, SET 在设置操作成功完成时,才返回 OK

2.2 GET命令

Redis Get 命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误。

语法

redis 127.0.0.1:6379> GET KEY_NAME

返回值

返回 key 的值,如果 key 不存在时,返回 nil如果 key 不是字符串类型,那么返回一个错误。

2.3 MSET命令

Redis Mset 命令用于同时设置一个或多个 key-value 对。

语法

redis 127.0.0.1:6379> MSET key1 value1 key2 value2 .. keyN valueN

返回值

总是返回 OK


2.4 MGET命令

Redis Mget 命令返回所有(一个或多个)给定 key 的值。如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil

语法

redis 127.0.0.1:6379> MGET KEY1 KEY2 .. KEYN

返回值

一个包含所有给定 key 的值的列表。

2.5 SETNX命令

Redis SetnxSET if Not eXists命令在指定的 key 不存在时,为 key 设置指定的值。

语法

redis 127.0.0.1:6379> SETNX KEY_NAME VALUE

返回值

设置成功,返回 1 设置失败,返回 0

2.6 MSETNX命令

Redis Msetnx 命令用于所有给定 key 都不存在时,同时设置一个或多个 key-value 对。

语法

redis 127.0.0.1:6379> MSETNX key1 value1 key2 value2 .. keyN valueN

返回值

当所有 key 都成功设置,返回 1 如果所有给定 key 都设置失败(至少有一个 key 已经存在),那么返回 0

2.7 SETRANGE命令 

Redis Setrange 命令用指定的字符串覆盖给定 key 所储存的字符串值,覆盖的位置从偏移量 offset 开始。

语法

redis 127.0.0.1:6379> SETRANGE KEY_NAME OFFSET VALUE

redis 127.0.0.1:6379> SETRANGE KEY_NAME OFFSET VALUE

返回值

被修改后的字符串长度。

2.8 GETRANGE命令

Redis Getrange 命令用于获取存储在指定 key 中字符串的子字符串。字符串的截取范围由 start end 两个偏移量决定(包括 start end 在内)

语法

redis 127.0.0.1:6379> GETRANGE KEY_NAME start end

返回值

截取得到的子字符串。

2.9 GETSET命令

Redis Getset 命令用于设置指定 key 的值,并返回 key 的旧值。

语法

redis 127.0.0.1:6379> GETSET KEY_NAME VALUE

返回值

返回给定 key 的旧值。 key 没有旧值时,即 key 不存在时,返回 nil

key 存在但不是字符串类型时,返回一个错误。

2.10 SETBIT命令

Redis Setbit 命令用于对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)

语法

redis 127.0.0.1:6379> Setbit KEY_NAME OFFSET

返回值

指定偏移量原来储存的位。


2.11 GETBIT命令 

Redis Getbit 命令用于对 key 所储存的字符串值,获取指定偏移量上的位(bit)

语法

redis 127.0.0.1:6379> GETBIT KEY_NAME OFFSET

返回值

字符串值指定偏移量上的位(bit)

当偏移量 OFFSET 比字符串值的长度大,或者 key 不存在时,返回 0

2.12 SETEX命令

Redis Setex 命令为指定的 key 设置值及其过期时间。如果 key 已经存在, SETEX 命令将会替换旧的值。

语法

redis 127.0.0.1:6379> SETEX KEY_NAME TIMEOUT VALUE

返回值

设置成功时返回 OK

2.13 PSETEX命令

Redis Psetex 命令以毫秒为单位设置 key 的生存时间。

语法

redis 127.0.0.1:6379> PSETEX key1 EXPIRY_IN_MILLISECONDS value1

返回值

设置成功时返回 OK

2.14 STRLEN命令

Redis Strlen 命令用于获取指定 key 所储存的字符串值的长度。当 key 储存的不是字符串值时,返回一个错误。

语法

redis 127.0.0.1:6379> STRLEN KEY_NAME

返回值

字符串值的长度。 key 不存在时,返回 0

2.15 INCR命令

Redis Incr 命令将 key 中储存的数字值增一。

如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作。

如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

本操作的值限制在 64 (bit)有符号数字表示之内。

语法

redis 127.0.0.1:6379> INCR KEY_NAME

返回值

执行 INCR 命令之后 key 的值。

2.16 INCRBY命令

Redis Incrby 命令将 key 中储存的数字加上指定的增量值。

如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCRBY 命令。

如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

本操作的值限制在 64 (bit)有符号数字表示之内。

语法

redis 127.0.0.1:6379> INCRBY KEY_NAME INCR_AMOUNT

返回值

加上指定的增量值之后, key 的值。

2.17 DECR命令

Redis Decr 命令将 key 中储存的数字值减一。

如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECR 操作。

如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

本操作的值限制在 64 (bit)有符号数字表示之内。

语法

redis 127.0.0.1:6379> DECR KEY_NAME

返回值

执行命令之后 key 的值。

2.18 DECRBY命令

Redis Decrby 命令将 key 所储存的值减去指定的减量值。

如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECRBY 操作。

如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

本操作的值限制在 64 (bit)有符号数字表示之内。

语法

redis 127.0.0.1:6379> DECRBY KEY_NAME DECREMENT_AMOUNT

返回值

减去指定减量值之后, key 的值。

2.19 APPEND命令

Redis Append 命令用于为指定的 key 追加值。

如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。

如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。

语法

redis 127.0.0.1:6379> APPEND KEY_NAME NEW_VALUE

返回值

追加指定值之后, key 中字符串的长度。

 

相关文章
|
2月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
318 100
|
2月前
|
开发者 Python
Python中的f-string:高效字符串格式化的利器
Python中的f-string:高效字符串格式化的利器
432 99
|
2月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
|
2月前
|
开发者 Python
Python f-string:高效字符串格式化的艺术
Python f-string:高效字符串格式化的艺术
|
3月前
|
Python
Python中的f-string:更简洁的字符串格式化
Python中的f-string:更简洁的字符串格式化
280 92
|
4月前
|
自然语言处理 Java Apache
在Java中将String字符串转换为算术表达式并计算
具体的实现逻辑需要填写在 `Tokenizer`和 `ExpressionParser`类中,这里只提供了大概的框架。在实际实现时 `Tokenizer`应该提供分词逻辑,把输入的字符串转换成Token序列。而 `ExpressionParser`应当通过递归下降的方式依次解析
337 14
|
6月前
|
消息中间件 缓存 NoSQL
基于Spring Data Redis与RabbitMQ实现字符串缓存和计数功能(数据同步)
总的来说,借助Spring Data Redis和RabbitMQ,我们可以轻松实现字符串缓存和计数的功能。而关键的部分不过是一些"厨房的套路",一旦你掌握了这些套路,那么你就像厨师一样可以准备出一道道饕餮美食了。通过这种方式促进数据处理效率无疑将大大提高我们的生产力。
237 32
|
8月前
|
数据处理
鸿蒙开发:ArkTs字符串string
字符串类型是开发中非常重要的一个数据类型,除了上述的方法概述之外,还有String对象,正则等其他的用处,我们放到以后得篇章中讲述。
493 19
下一篇
oss云网关配置