首页 > 数据库 >Redis入门(二)

Redis入门(二)

时间:2024-11-19 19:49:36浏览次数:3  
标签:返回 入门 Redis key 字符串 World Hello mykey

Redis字符串(String)

Redis 的字符串(String)是最基本的数据类型之一,它可以存储任意类型的字符串数据,包括文本和二进制数据。字符串的最大长度为 512 MB。Redis 提供了丰富的命令来操作字符串,包括设置、获取、递增、递减等操作。

基本概念

键(Key):字符串的主键。
值(Value):与键关联的字符串值。

常用命令

1.SET:设置键的字符串值

SET key value
  • key:字符串的主键。
  • value:要设置的值。

示例:

SET mykey Hello,world!

返回:OK 

2.GET:获取键的字符串值 

GET key
  • key:字符串的主键。

示例: 

GET mykey

返回:"Hello, World!"

3.GETSET:将键的值设置为新的值,并返回旧的值

GETSET key newvalue
  • key:字符串的主键。
  • newvalue:新的值。 

示例:

GETSET mykey "New Value"  

 返回:"Hello, World!"

4.MSET:同时设置一个或多个键的值 

 

MSET key1 value1 key2 value2 ...
  • key1value1key2value2:键和对应的值。

示例:

MSET key1 "value1" key2 "value2"

 5.MGET:获取所有给定键的值

MGET key1 key2 ...
  • key1key2:键。

示例:

MGET key1 key2  

 返回: "value1" "value2"

6.DEL:删除一个或多个键

DEL key1 key2 ...
  • key1key2:键。

示例:

DEL key1 key2

 7.EXISTS:检查一个或多个键是否存在

EXISTS key1 key2 ...
  • key1key2:键。

示例:

EXISTS key1 key2  

 返回:1(表示存在)

8.INCR:将键的值增加 1

INCR key
  • key:字符串的主键。

示例:

INCR counter 

 返回:如果 counter 的初始值为 0,则返回 1

9.DECR:将键的值减少 1 

DECR key
  • key:字符串的主键。

示例:

DECR counter  

 返回:如果 counter 的初始值为 1,则返回 0

10.INCRBY:将键的值增加指定的整数值

INCRBY key increment
  • key:字符串的主键。
  • increment:要增加的值。

示例:

INCRBY counter 5  

返回:如果 counter 的初始值为 0,则返回 5

11.DECRBY:将键的值减少指定的整数值

DECRBY key decrement
  • key:字符串的主键。
  • decrement:要减少的值。

示例:

DECRBY counter 5  

返回:如果 counter 的初始值为 5,则返回 0

12.INCRBYFLOAT:将键的值增加指定的浮点数值

INCRBYFLOAT key increment
  • key:字符串的主键。
  • increment:要增加的值

示例:

INCRBYFLOAT counter 2.5  

 返回:如果 counter 的初始值为 0,则返回 2.5

13.APPEND:将值追加到键的现有值后面

APPEND key value
  • key:字符串的主键。
  • value:要追加的值。

示例:

APPEND mykey " and Hello, Redis!"  

 返回:如果 mykey 的初始值为 "Hello, World!",则返回 "Hello, World! and Hello, Redis!"

14.GETRANGE:获取键的值的一部分 

GETRANGE key start end
  • key:字符串的主键。
  • startend:起始和结束索引,从 0 开始。

示例:

GETRANGE mykey 0 5  

 返回:如果 mykey 的值为 "Hello, World!",则返回 "Hello,"

 15.SETRANGE:修改键的值的一部分

SETRANGE key offset value
  • key:字符串的主键。
  • offset:起始索引,从 0 开始。
  • value:要设置的值。

示例:

SETRANGE mykey 7 "Redis"  

 返回:如果 mykey 的值为 "Hello, World!",则返回 "Hello, Redis!"

16.STRLEN:获取键的值的长度 

STRLEN key
  • key:字符串的主键。

示例:

STRLEN mykey 

 返回:如果 mykey 的值为 "Hello, World!",则返回 13

17.SETNX:只有当键不存在时,才设置键的值

SETNX key value
  • key:字符串的主键。
  • value:要设置的值。

示例:

SETNX mykey "Hello, World!" 

 返回:如果 mykey 不存在,则返回 1 并设置值

18.SETEX:将键的值设置为指定的字符串,并设置键的过期时间(以秒为单位) 

SETEX key seconds value
  • key:字符串的主键。
  • seconds:过期时间(以秒为单位)。
  • value:要设置的值。

示例:

SETEX mykey 10 "Hello, World!"  

 返回:设置 mykey 的值为 "Hello, World!",并设置过期时间为 10 秒

19.PSETEX:将键的值设置为指定的字符串,并设置键的过期时间(以毫秒为单位)

PSETEX key milliseconds value
  • key:字符串的主键。
  • milliseconds:过期时间(以毫秒为单位)。
  • value:要设置的值。

示例:

PSETEX mykey 10000 "Hello, World!"  

 返回:设置 mykey 的值为 "Hello, World!",并设置过期时间为 10000 毫秒(10 秒)

综合示例

假设我们要存储和操作一些字符串数据:

# 设置键的值
SET mykey "Hello, World!"

# 获取键的值
GET mykey  # 返回 "Hello, World!"

# 将键的值设置为新的值,并返回旧的值
GETSET mykey "New Value"  # 返回 "Hello, World!"

# 同时设置多个键的值
MSET key1 "value1" key2 "value2"

# 获取多个键的值
MGET key1 key2  # 返回 "value1" "value2"

# 删除键
DEL key1 key2

# 检查键是否存在
EXISTS mykey  # 返回 1(存在)

# 递增键的值
INCR counter  # 如果 counter 的初始值为 0,则返回 1

# 递减键的值
DECR counter  # 如果 counter 的初始值为 1,则返回 0

# 递增键的值指定的整数值
INCRBY counter 5  # 如果 counter 的初始值为 0,则返回 5

# 递减键的值指定的整数值
DECRBY counter 5  # 如果 counter 的初始值为 5,则返回 0

# 递增键的值指定的浮点数值
INCRBYFLOAT counter 2.5  # 如果 counter 的初始值为 0,则返回 2.5

# 将值追加到键的现有值后面
APPEND mykey " and Hello, Redis!"  # 如果 mykey 的值为 "Hello, World!",则返回 "Hello, World! and Hello, Redis!"

# 获取键的值的一部分
GETRANGE mykey 0 5  # 如果 mykey 的值为 "Hello, World!",则返回 "Hello,"

# 修改键的值的一部分
SETRANGE mykey 7 "Redis"  # 如果 mykey 的值为 "Hello, World!",则返回 "Hello, Redis!"

# 获取键的值的长度
STRLEN mykey  # 如果 mykey 的值为 "Hello, Redis!",则返回 13

# 只有当键不存在时,才设置键的值
SETNX mykey "Hello, World!"  # 如果 mykey 已存在,则返回 0

# 将键的值设置为指定的字符串,并设置键的过期时间(以秒为单位)
SETEX mykey 10 "Hello, World!"  # 设置 mykey 的值为 "Hello, World!",并设置过期时间为 10 秒

# 将键的值设置为指定的字符串,并设置键的过期时间(以毫秒为单位)
PSETEX mykey 10000 "Hello, World!"  # 设置 mykey 的值为 "Hello, World!",并设置过期时间为 10000 毫秒(10 秒)

 通过这些命令,Redis 的字符串(String)功能可以非常高效地处理和操作字符串数据,适用于多种实际应用场景,如缓存、计数器等。

 

标签:返回,入门,Redis,key,字符串,World,Hello,mykey
From: https://blog.csdn.net/qq_38633763/article/details/143889707

相关文章

  • 【入门】字符串的反码c++
    #include<bits/stdc++.h>usingnamespacestd;intmain(){ //一、分析问题 //已知:一个长度不超过80个字符的字符串。 //未知:字符串的反码。 //关系:如果这是一个小写字符,则它和字符a的距离与它的反码和字符z的距离相同;如果是一个大写字符,则它和字符A的距离与它......
  • 微信小程序实现跑步轨迹回放入门教程
    一、先看效果跑步轨迹回放二、实现功能【跑步运动助手】是一款微信小程序,主要实现了跑步轨迹记录、历史轨迹、轨迹纠偏、轨迹回放和轨迹排名等功能。本文主要讲如何实现轨迹动画回放功能。更多干货请关注公众号:小蝇工作室1.获取GPS数据queryData=function(url,data......
  • 1(1)FPGA入门第一关
    课程介绍1-24节为基础,之后为进阶的课程“FPGA中没有真正做算法的,一般都是别人将算法研发出来讲给你,你用FPGA去实现出来”什么是FPGA?FPGA有哪些优势?后三者的电路是已经做好了的,要用的时候需要去学习有哪电路以及如何调用,而FPGA需要你自己去设计电路来实现功能FPGA直接将......
  • 安装redis
    前提:已安装docker服务云服务器或本地服务器已开放redis端口拉取镜像#登陆私有库dockerlogin-uadmin-p私有库密码http://8.134.59.62:8083#拉取redis镜像dockerpull8.134.59.62:8083/redis      4. 新建redis挂载目录及配置文件#新建redis数据存......
  • 嵌入式硬件杂谈(三)-高速PCB入门,什么是阻抗匹配?
    引言:对于嵌入式硬件这个庞大的知识体系而言,太多离散的知识点很容易疏漏,因此对于这些容易忘记甚至不明白的知识点做成一个梳理,供大家参考以及学习,本文主要针对高速PCB入门的阻抗匹配问题的本质的知识点的进行学习。在嵌入式硬件设计领域,高速PCB设计是一项极具挑战性的工作,其中......
  • Shopify开发入门(一)——APP & theme介绍
    什么是Shopify?一个概览,对Shopify运行逻辑的大概的介绍,并且抽象出一个贯穿始终的概念:作为一个Shopify开发者,我们需要为商家提供满足他们的配置并且我们还要实现对应的页面功能!shopify.dev/docsapp:shopify.dev/docs/apps/b…theme:shopify.dev/docs/storef…总结......
  • SpringCloud SaToken整合微服务 集成Redis 网关路由权限拦截 服务间内部调用鉴权
    介绍作为API网关,通常负责路由、负载均衡、安全控制等功能。进行统一鉴权的做法意味着将所有微服务的认证和授权逻辑集中到网关层,而不是每个微服务单独实现。这样做有许多好处,微服务只关心核心业务逻辑,不需要处理身份验证、权限验证等安全问题,减少了开发人员的负担。网......
  • Swift 宏(Macro)入门趣谈(四)
    概述苹果在去年WWDC23中就为Swift语言新增了“其利断金”的重要小伙伴Swift宏(SwiftMacro)。为此,苹果特地用2段视频(入门和进阶)颇为隆重的介绍了它。那么到底Swift宏是什么?有什么用?它和C/C++语言中的宏又有什么异同呢?本系列博文将会尝试为小伙伴们揭开Swift......
  • 网络安全入门教程(非常详细)从零基础入门到精通_网路安全 教程
     前言1.入行网络安全这是一条坚持的道路,三分钟的热情可以放弃往下看了。2.多练多想,不要离开了教程什么都不会了,最好看完教程自己独立完成技术方面的开发。3.有时多百度,我们往往都遇不到好心的大神,谁会无聊天天给你做解答。4.遇到实在搞不懂的,可以先放放,以后再来解决。→【......
  • redis知识之HyperLogLog.md
    先说明一下,HyperLogLog是一种算法,并不是由redis创造了它。Redis在2.8.9版本添加了HyperLogLog结构(简介HLL),用于做基数统计,其使用算法HyperLogLog使得在数量级特别大的情况下占用空间很小。说白了就是在大数据量级的情况下能够在很小的空间中进行元素去重统计。如果使用我们......