Redis基本數據結構 ― String

2024-04-29 09:52

本文主要是介绍Redis基本數據結構 ― String,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Redis基本數據結構 ― String

  • 介紹
  • 常用命令
  • 範例
    • 1. 為字串鍵設值/取得字串鍵的值
    • 2. 查看字串鍵的過期時間
    • 3. 如何為key設置時間?
    • 4. 如何刪除指定key?
    • 5. 如何增加value的值?
    • 6. 獲取value值的長度

介紹

  • 字串鍵是Redis中最基本的鍵值對類型,這種類型的鍵值對會在數據庫中把單獨的一個鍵和單獨的一個值關聯起來,被關聯的鍵和值既可以是普通的文字數據,也可以是圖片、影片、音樂、壓縮檔案等更為複雜的二進制數據。

  • String類型是二進制安全的,二進制安全是指: 存進去是什麼,拿出來就是什麼。 所以redis的String可以包含任何數據,比如數字、字串、jpg圖片或者序列化的對象。

常用命令

命令功能
SET為字串鍵設值
MSET一次為多個字串鍵設值
GET獲取字串鍵的值
MGET一次獲取多個字串鍵的值
GETSET獲取舊值,並設置新值
MSETNX只在鍵不存在的情況下,一次為多個字串鍵設值
STRLEN獲取字串鍵的值的長度
GETRANGE獲取字串鍵值指定索引範圍上的內容
SETRANGE對字串鍵值指定索引範圍進行設置
APPEND追加新內容到值的尾端
INCRBY、DECRBY對整數值執行加法、減法操作
INCR、DECR對整數值執行加一、減一操作
INCRBYFLOAT對數字值執行浮點數加法操作

範例

1. 為字串鍵設值/取得字串鍵的值

set key value
get key

在这里插入图片描述

2. 查看字串鍵的過期時間

redis的key是有過期時間的

  • 單位為秒
  • -1代表永不過期
ttl key

在这里插入图片描述

3. 如何為key設置時間?

-- 單位為秒
expire key 秒數

將name這個key的過期時間設置為10秒,10秒後就get不到這個key了

在这里插入图片描述

4. 如何刪除指定key?

del key

在这里插入图片描述

5. 如何增加value的值?

在这里插入图片描述

  • 加一

    incr key
    decr key
    

    在这里插入图片描述

  • 加指定數字

    incrby key 數字
    decrby key 數字
    

    在这里插入图片描述

6. 獲取value值的長度

strlen key

在这里插入图片描述

这篇关于Redis基本數據結構 ― String的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/945768

相关文章

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

C 语言的基本数据类型

C 语言的基本数据类型 注:本文面向 C 语言初学者,如果你是熟手,那就不用看了。 有人问我,char、short、int、long、float、double 等这些关键字到底是什么意思,如果说他们是数据类型的话,那么为啥有这么多数据类型呢? 如果写了一句: int a; 那么执行的时候在内存中会有什么变化呢? 橡皮泥大家都玩过吧,一般你买橡皮泥的时候,店家会赠送一些模板。 上

FreeRTOS-基本介绍和移植STM32

FreeRTOS-基本介绍和STM32移植 一、裸机开发和操作系统开发介绍二、任务调度和任务状态介绍2.1 任务调度2.1.1 抢占式调度2.1.2 时间片调度 2.2 任务状态 三、FreeRTOS源码和移植STM323.1 FreeRTOS源码3.2 FreeRTOS移植STM323.2.1 代码移植3.2.2 时钟中断配置 一、裸机开发和操作系统开发介绍 裸机:前后台系

Java 多线程的基本方式

Java 多线程的基本方式 基础实现两种方式: 通过实现Callable 接口方式(可得到返回值):

Redis中使用布隆过滤器解决缓存穿透问题

一、缓存穿透(失效)问题 缓存穿透是指查询一个一定不存在的数据,由于缓存中没有命中,会去数据库中查询,而数据库中也没有该数据,并且每次查询都不会命中缓存,从而每次请求都直接打到了数据库上,这会给数据库带来巨大压力。 二、布隆过滤器原理 布隆过滤器(Bloom Filter)是一种空间效率很高的随机数据结构,它利用多个不同的哈希函数将一个元素映射到一个位数组中的多个位置,并将这些位置的值置

Lua 脚本在 Redis 中执行时的原子性以及与redis的事务的区别

在 Redis 中,Lua 脚本具有原子性是因为 Redis 保证在执行脚本时,脚本中的所有操作都会被当作一个不可分割的整体。具体来说,Redis 使用单线程的执行模型来处理命令,因此当 Lua 脚本在 Redis 中执行时,不会有其他命令打断脚本的执行过程。脚本中的所有操作都将连续执行,直到脚本执行完成后,Redis 才会继续处理其他客户端的请求。 Lua 脚本在 Redis 中原子性的原因

Java基础回顾系列-第一天-基本语法

基本语法 Java基础回顾系列-第一天-基本语法基础常识人机交互方式常用的DOS命令什么是计算机语言(编程语言) Java语言简介Java程序运行机制Java虚拟机(Java Virtual Machine)垃圾收集机制(Garbage Collection) Java语言的特点面向对象健壮性跨平台性 编写第一个Java程序什么是JDK, JRE下载及安装 JDK配置环境变量 pathHe

string字符会调用new分配堆内存吗

gcc的string默认大小是32个字节,字符串小于等于15直接保存在栈上,超过之后才会使用new分配。