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

news/2024/10/7 1:28:47

文章目录:

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)的相关命令

序号命令及描述
1SET key value
设置指定 key 的值
2GET key
获取指定 key 的值。
3GETRANGE key start end
返回 key 中字符串值的子字符
4GETSET key value
将给定 key 的值设为 value ,并返回 key 的旧值(old value)。
5GETBIT key offset
对 key 所储存的字符串值,获取指定偏移量上的位(bit)。
6MGET key1 [key2...]
获取所有(一个或多个)给定 key 的值。
7SETBIT key offset value
对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。
8SETEX key seconds value
将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。
9SETNX key value
只有在 key 不存在时设置 key 的值。
10SETRANGE key offset value
用 value 参数覆写给定 key 所储存的字符串值,从偏移量 offset 开始。
11STRLEN key
返回 key 所储存的字符串值的长度。
12MSET key value [key value...]
同时设置一个或多个 key-value 对。
13MSETNX key value [key value...]
同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。
14PSETEX key milliseconds value
这个命令和 SETEX 命令相似,但它以毫秒为单位设置 key 的生存时间,而不是像 SETEX 命令那样,以秒为单位。
15INCR key
将 key 中储存的数字值增一。
16INCRBY key increment
将 key 所储存的值加上给定的增量值(increment) 。
17INCRBYFLOAT key increment
将 key 所储存的值加上给定的浮点增量值(increment) 。
18DECR key
将 key 中储存的数字值减一。
19DECRBY key decrement
key 所储存的值减去给定的减量值(decrement) 。
20APPEND 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 Setnx(SET 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

返回值

被修改后的字符串长度。

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 中字符串的长度。

 


http://www.niftyadmin.cn/n/712260.html

相关文章

wei UI使用

1、前言 通过前面系列文章的学习与讲解,相信大家已经对微信的开发有了一个全新的认识。后端基本能够基于盛派的第三方sdk搞定大部分事宜,剩下的就是前端了。关于手机端的浏览器的兼容性问题相信一直是开发者们的一块心病,对于微信开发前端组件…

java练手

public class jichu{public static void main(String[] args){// 输出控制台System.out.print("hello world");}}public class jichu{public static void main(String[] args){int number23;String i"我爱你";char b‘女’;double c1.45&#x…

stm32cubeide调试查看函数值_C语言: windows下VS Debug调试

首先我先列出来常用的一些命令或者键盘控制:F5 开始调试,执行到断点Shift F5 停止调试F9 在光标所在行添加断点Shift F9 QuickWatchShift Ctrl F9 delete all 断点F10 单步执行F11 进入调用的函数Shift F11 跳出这次调用的函数另外还可以用Disable all…

web前端学习(二十六)——CSS3组合选择符、伪类伪元素的相关设置

1.CSS组合选择符 CSS组合选择符包括各种简单选择符的组合方式。 在 CSS3 中包含了四种组合方式: 后代选择器(以空格 分隔)子元素选择器(以大于 > 号分隔)相邻兄弟选择器(以加号 分隔)普通兄弟选择器(以波浪号 &#xff5e…

java构造函数 代码块 静态代码块_静态代码块、非静态代码块、构造函数的执行顺序...

class"java" name"code">public class ExA {static {System.out.println("父类--静态代码块");}public ExA() {System.out.println("父类--构造函数");}{System.out.println("父类--非静态代码块");}public static void …

编译glibc2.19

有些软件可能要求系统的 Glibc 高于某个版本才可以正常运行。如果您的 Glibc 低于要求的版本,为了运行这些软件,您就不得不升级您的 Glibc 了 。您可以寻找已经编译好的 rpm 包或者使用源代码的方式升级 Glibc。下载glibcwget http://ftp.gnu.org/gnu/g…

VMware快照的工作原理(转)

VMware中的快照是对VMDK在某个时间点的“拷贝”,这个“拷贝”并不是对VMDK文件的复制,而是保持磁盘文件和系统内存在该时间点的状态,以便在出现故障后虚拟机能够恢复到该时间点。如果对某个虚拟机创建了多个快照,那么就可以有多个…

ios开发返回按钮消失_关于iOS导航栏返回按钮问题的解决方法

最近遇到一个关于导航栏返回按钮的问题,因为之前项目里面都是用的系统默认的返回按钮样式所以没有想过要去更改,后来有需要将返回按钮箭头旁边的文字去掉,同时将该返回按钮的点击事件重新定义。一开始尝试自定义按钮然后设置为leftBarButtonI…