Redis7(二)数据类型及其用法

2024-04-09 08:04
文章标签 数据类型 用法 redis7

本文主要是介绍Redis7(二)数据类型及其用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、概述

命令不区分大小写,key区分大小写

数据类型针对value

String

List Set

Hash ZSet

bitmap GEO

HyperLogLog

Stream bitfield

二、String <K,V>

1、设值/取值

getrange key index1 index2
getrange key  0  -1//获取所有的值
SETRANGE KEY_NAME OFFSET VALUE
setrange key  0  xx //abcd -> xxcd

 2、获取区间值/设置区间值

set key value
get key
mset key1 value1 key2 value2 key3 value3
mget key1 key2 

3、数值增减

INCR key //加1
INCRBY key increment //INCRBY key1 3
DECR key
DECRBY key decrement//DECRBY key1 2

 4、获取字符串长度

strlen key

5、内容追加

append key value//append key1 xxx  abc->abcxxx

6、分布式锁

setex 键 秒值 真实值

setex key1 15 hello
setnx:只有在 key 不存在时设置 key 的值

00a264709a05423b80fa904982ca7f35.png

7、getset 先get然后立即set

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

3bae3fbb36bc4be6a1a72ff7401b05b3.png

二、List  一个key多个value  有序重复  

底层为双向链表

1、lpush、lrange、lpop&rpop

lpush list1 v1 v2 v3 v4
lrange list1 0 -1
1)v4
2)v3
3)v2
4)v1

8e4de5a8cdc54b129d544918fc1addc5.png

2、lindex

lindex key index
lindex list1 0
v4list1
1)v4
2)v3
3)v2
4)v1

3、llen

llen list
llen list1
4

4、 lrem

LREM list3 0 值,表示删除全部给定的值。零个就是全部值

09f5d5d9a9e944bba1547fa73e405bbd.png

5、ltrim

e56330c56053487fa50a70f9eba97512.png

 6、lset key index value

替换值

19e55921a6994fb48497941de4135b1b.png

7、linsert key before/after 已有值  插入的新值

b1f8a2231f4e44e4989e30e82da71dd5.png

8、rpoplpush 源列表 目标列表

1c9c5b742b074cb2905273a67c907955.png

 

d4de05e0affb4146be2adce94d96dce1.png

三、Set  一个key多个value  无序不重复

cdfc5423031e44ee8340473383ee7f5d.png

四、Hash  <K,<k,v>>

26a99da689ad4b5aba1ceaccae4e44a8.png

五、ZSet

key score1 v1 score2 v2 score3 v3
key1 30 v1 40 v2 50 v3

1、zrange key start stop [withscores]&zrevrange

按照分数从小到大返回区间元素

4094c5bd82be44d5aea2dd4a18b3fbc1.png

2、ZRANGEBYSCORE zset  min max 

ZCOUNT zset min max

获取指定分数范围内的元素

073b1414edf24ff6bd5440c3fc6af40d.png

3、正序逆序获取下标索引值 

d2ad1a25986c478fa24a3f652b288245.png

4、ZMPOP numkeys key [key ...] <MIN | MAX> [COUNT count]

ZMPOP  移除个数 有序集合名  <MIN | MAX>  [COUNT  限制数]  

限制数默认为1

c5bcb578a0dd40229aa2f3dbdb7de11d.png

 

 

538d5426ede64f0b8c5a3014399b15ef.png

 

这篇关于Redis7(二)数据类型及其用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

bytes.split的用法和注意事项

当然,我很乐意详细介绍 bytes.Split 的用法和注意事项。这个函数是 Go 标准库中 bytes 包的一个重要组成部分,用于分割字节切片。 基本用法 bytes.Split 的函数签名如下: func Split(s, sep []byte) [][]byte s 是要分割的字节切片sep 是用作分隔符的字节切片返回值是一个二维字节切片,包含分割后的结果 基本使用示例: pa

C 语言的基本数据类型

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

UVM:callback机制的意义和用法

1. 作用         Callback机制在UVM验证平台,最大用处就是为了提高验证平台的可重用性。在不创建复杂的OOP层次结构前提下,针对组件中的某些行为,在其之前后之后,内置一些函数,增加或者修改UVM组件的操作,增加新的功能,从而实现一个环境多个用例。此外还可以通过Callback机制构建异常的测试用例。 2. 使用步骤         (1)在UVM组件中内嵌callback函

这些ES6用法你都会吗?

一 关于取值 取值在程序中非常常见,比如从对象obj中取值 const obj = {a:1b:2c:3d:4} 吐槽: const a = obj.a;const b = obj.b;const c = obj.c;//或者const f = obj.a + obj.b;const g = obj.c + obj.d; 改进:用ES6解构赋值

C语言程序设计(数据类型、运算符与表达式)

一、C的数据类型 C语言提供的数据类型: 二、常量和变量 2.1常量和符号常量 在程序运行过程中,其值不能被改变的量称为常量。 常量区分为不同的类型: 程序中用#define(预处理器指令)命令行定义变量将代表常量,用一个标识符代表一个常量,称为符合常量。 2.2变量 变量代表内存中具有特定属性的一个存储单元,用来存放数据,在程序运行期间,这些值是可以 改变的。 变

2021-8-14 react笔记-2 创建组件 基本用法

1、目录解析 public中的index.html为入口文件 src目录中文件很乱,先整理文件夹。 新建components 放组件 新建assets放资源   ->/images      ->/css 把乱的文件放进去  修改App.js 根组件和index.js入口文件中的引入路径 2、新建组件 在components文件夹中新建[Name].js文件 //组件名首字母大写

Redis地理数据类型GEO

通常要计算两个地理位置的距离不是很方便,这里可以直接通过Redis提供的GEO操作来完成地理位置相关的计算 1)添加地理位置 语法:geoadd key longitude latitude member [longitude latitude member] ...字段说明:key:存放地理位置的集合名称longitude:地理坐标的经度latitude:地理坐标的纬度member:表示这

Cmake之3.0版本重要特性及用法实例(十三)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【原创干货持续更新中……】🚀 优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门视频实战课 🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧

关于断言的部分用法

1、带变量的断言  systemVerilog assertion 中variable delay的使用,##[variable],带变量的延时(可变延时)_assertion中的延时-CSDN博客 2、until 的使用 systemVerilog assertion 中until的使用_verilog until-CSDN博客 3、throughout的使用   常用于断言和假设中的

ExpandableListView的基本用法

QQ上的好友列表在Android怎么实现,有一个最简单的方法,那就是ExpandableListView,下面简单介绍一下ExpandableListview的用法。 先看看效果图,没有找到大小合适的图片,所以凑合着看吧。     一、准备工作(界面,和需要的数据)             <? xml   version = "1.0"   encoding =