【redis】常用数据类型及命令

通用命令

exists

判断key是否存在,返回1或0

del

删除key,key存在时返回1,key不存在时返回0

type

获取key类型

ttl

获取key剩余生存时间,-2表示key不存在,-1表示key永久生存

String类型

介绍

String类型是Redis最基本的数据类型,它存储的是字符串,字符串可以包含字母、数字、特殊字符等,字符串的长度没有限制,但是Redis的内存大小是有限的,如果存储的数据超过内存,Redis会自动删除数据。

常用命令

set/get

设置和获取数据key-value

set key value
get key
mset/mget

设置和获取多个key-value对数据,

mset key1 value1 key2 value2
mget key1 key2
incr/decr

对key对应的value进行加减1操作

incr key
decr key
incrby/decrby

对key对应的value进行加减操作,可以设置步长

incrby key 2
decrby key 2
setex

设置key-value,并设置过期时间

setex key 10 value
setnx

设置key-value,如果key存在,则不设置

setnx key value
getset

先获取key的值,再设置key-value,当key不存在时,会返回nil

getset key value

注意

  • value 不能超过512MB
  • key 本身会占用内存,所以key的设计不要过长
  • key最好使用:分割,比如user:id

List类型

介绍

List 是字符串列表,按照插入顺序排列,每个元素都是字符串,List 可以被用作栈、队列等。List的底层是一个双向链表,插入和删除都是O(1),查询是O(n) 。

常用命令

lpush

在列表左边插入元素

lpush key value1 value2
rpop

从列表右边取出并删除元素

rpop key
lrange

取出指定范围的元素,下标从0开始

lrange key start endlrange key 0 -1
llen

获取列表长度

llen key
rpush

在列表右边插入元素

rpush key value1 value2
lpop

从列表左边取出并删除元素

lpop key
brpop

从列表右边取出并删除元素,如果列表为空,则阻塞一段时间,直到有元素加入列表

brpop key timeout
lrem

删除指定数量的指定元素

lrem key count value

注意

  • 存储string 类型
  • 列表最多存储2^32-1个元素,

Hash类型

介绍

Hash 是字符串字典,通过哈希表实现,可以存储键值对,每个键只能对应一个值

我觉得看起来和string一样的,只不过是把一些key-value封装到了一起,相当于一个对象,便于管理

常用命令

hset

设置key指定的哈希集中指定字段的值

hset key field value
hget

获取key指定的哈希集中指定字段的值

hget key field
hmset

同时设置key指定的哈希集中一个或多个字段的值

hmset key field1 value1 field2 value2
hmget

同时获取key指定的哈希集中一个或多个哈希字段的值

hmget key field1 field2
hgetall

获取key指定的哈希集中所有字段和值

hgetall key
hdel

删除key指定的哈希集中指定字段

hdel key field1 field2
hexists

查看key指定的哈希集中是否包含指定字段

hexists key field
hlen

获取key指定的哈希集中的字段数量

hlen key
hincrby

为key指定的哈希集中指定字段的值加上指定值

如果字段不存在,则创建字段并设置初始值,如果字段不是数字,则返回错误

hincrby key field value

set类型

介绍

set 是一个集合,集合中元素是唯一的。集合可以用于去重,计算交集、差集,用户画像标签等。

集合也是通过哈希表实现的

常用命令

sadd

向集合中添加元素

sadd key member1 member2
srem

从集合中删除元素,忽略不存在的元素

srem key member1 member2
scard

获取集合中元素的数量

scard key
sdiff

获取第一个集合与其他集合的差集

sdiff key1 key2 ...
sinter

获取所有集合的交集

sinter key1 key2 ...
sunion

获取所有集合的并集

sunion key1 key2 ...
sismember

判断元素是否在集合中

sismember key member
smembers

取集合中的所有元素

smembers key

Sorted Set类型

介绍

Sorted Set 是有序集合,集合中元素是唯一的,并且按照分数排序,分数可以是整数或双精度浮点数。可以看作是在Set 基础上,通过维护score,添加了排序的功能。

可以用于实时排行榜,优先级队列等。

常用命令

zadd

向有序集合中添加元素,如果已经存在,则更新分数

zadd key score member
zrem

从有序集合中删除元素

zrem key member
zscore

获取有序集合中指定元素的分数

zscore key member
zcard

获取有序集合中元素的数量

zcard key
zcount

获取有序集合中指定分数范围的元素

zcount key min max
zincrby

为有序集合中指定元素加上指定分数

zincrby key score member
zrange

获取有序集合中指定范围的元素,按分数从小到大排序

zrange key start end
zrevrange

获取有序集合中指定范围的元素,按分数从大到小排序

zrevrange key start end
zrank

获取有序集合中指定元素的排名,按分数从小到大排序

zrank key member
zrevrank

获取有序集合中指定元素的排名,按分数从大到小排序

zrevrank key member

,按分数从小到大排序

zrange key start end
zrevrange

获取有序集合中指定范围的元素,按分数从大到小排序

zrevrange key start end
zrank

获取有序集合中指定元素的排名,按分数从小到大排序

zrank key member
zrevrank

获取有序集合中指定元素的排名,按分数从大到小排序

zrevrank key member

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1540151.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

大白话解读末日期权是什么意思?末日期权与黑天鹅!

今天带你了解大白话解读末日期权是什么意思?末日期权与黑天鹅!末日期权与黑天鹅事件的关系主要体现在风险和波动性管理上,交易者需要谨慎对待这两者的互动。 末日期权和期权黑天鹅事件之间的关系主要体现在风险管理和市场波动性上。 末日期…

没有那个文件或目录 #include <bits/libc-header-start.h>

Ubuntu 18.04 编译需要编译32位系统 gcc -ggdb -m32 -c -o exploit.o exploit.c gcc -m32 -L/usr/lib32 exploit.o -o exploit 报错: 解决方法: sudo apt-get install libc6-dev-i386sudo apt-get install gcc-multilib

【C++】哈希表:字母异位词分组(体会泛型编程的强大)

1.题目 2.思路 利用map的特性&#xff0c;第一个值存排好序的string&#xff0c;第二个值存vector<string>。这样就可以很好的将异位词分组。 3.代码 class Solution { public:vector<vector<string>> groupAnagrams(vector<string>& strs) {un…

25届计算机专业毕设选题推荐-基于python的二手电子设备交易平台【源码+文档+讲解】

&#x1f496;&#x1f525;作者主页&#xff1a;毕设木哥 精彩专栏推荐订阅&#xff1a;在 下方专栏&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; 实战项目 文章目录 实战项目 一、基于python的二手电子设备交…

六西格玛绿带培训多少钱?从授“鱼”到授“渔”

六西格玛作为一种全球公认的质量管理方法&#xff0c;其影响力日益扩大&#xff0c;而六西格玛绿带培训作为这一体系中的关键环节&#xff0c;更是吸引了众多希望在职场上脱颖而出的专业人士。本文&#xff0c;深圳天行健企业管理咨询公司将从多个维度深入探讨“六西格玛绿带培…

【大模型】初识大模型(非常详细)零基础入门到精通,收藏这一篇就够了_大模型入门

大模型的定义 大模型是指具有数千万甚至数亿参数的深度学习模型。近年来&#xff0c;随着计算机技术和大数据的快速发展&#xff0c;深度学习在各个领域取得了显著的成果&#xff0c;如自然语言处理&#xff0c;图片生成&#xff0c;工业数字化等。为了提高模型的性能&#xf…

游戏如何应对云手机刷量问题

云手机的实现原理是依托公有云和 ARM 虚拟化技术&#xff0c;为用户在云端提供一个安卓实例&#xff0c;用户可以将手机上的应用上传至云端&#xff0c;再通过视频流的方式&#xff0c;远程实时控制云手机。 市面上常见的几款云手机 原本需要手机提供的计算、存储等能力都改由…

在校三个月备考软考中项顺利拿证,经验分享

作为一名在校生&#xff0c;我在三个月的备考软考中项后成功拿到证书&#xff0c;对于软考中项的考试技巧有着丰富的经验。首先&#xff0c;我给你分享一些备考技巧&#xff1a; 1. 不要死记硬背&#xff01;最好是结合跟班学习和教材双管齐下。先过一遍所有知识点&#xff08…

如何查看Android设备的dpi

adb shell getprop ro.sf.lcd_density adb shell cat /system/build.prop > build_prop.txt shell cat system/build.prop 结果&#xff1a;参考&#xff1a; 如何查看Android设备的dpi_安卓 查看手机dpi-CSDN博客

【里程碑】轻空间SPIKE AIRDOME项目落地印尼雅加达

在经过半年的激烈角逐与严苛考量后&#xff0c;轻空间凭借其卓越的气承式球幕技术&#xff0c;成功赢得印尼最大城市建设商的青睐&#xff0c;正式签约 SPIKE AIRDOME 项目。该项目将落地印尼首都雅加达CBD&#xff0c;成为这一繁华商业中心的全新地标。轻空间技术负责人亲切地…

一些线上常用排查问题的命令

排查CPU过高时使用到的一些命令 top free df top命令 top 命令是一个动态的实时视图&#xff0c;显示系统的整体运行状况&#xff0c;包括 CPU 使用率、内存使用情况、进程信息等。 free 命令 free 命令用于显示系统中物理内存和交换内存的使用情况。 df 命令 df 命令用…

如何从 Nutanix 迁移至 SmartX 超融合?解读 4 类迁移方案和 2 例迁移实践

2022 年底&#xff0c;Nutanix&#xff08;路坦力&#xff09;正式宣布将中国市场交由合作伙伴&#xff08;联想&#xff09;主导销售&#xff0c;并于 2023 年 8 月完成全面转型。转型后&#xff0c;虽然中国用户依旧可以使用 Nutanix 产品&#xff0c;但在软件的续保和维保方…

基于flask+vue框架的传染病防控酒店信息系统zvt93(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;患者,服务人员,病房类型,病房信息,病房分配,需求箱,商品分类,商品信息,购买商品,分配反馈,健康上报,患者信息,患者分配 开题报告内容 基于flaskvue框架的传染病防控酒店信息系统开题报告 一、项目背景 在全球公共卫生事件频发的背景下…

鸿蒙应用生态构建的核心目标

保护开发者和用户利益的同时维护整体系统的安全性&#xff0c;对生态构建者是至关重要的。以开发者为中心&#xff0c;构建端到端应用安全能力&#xff0c;保护应用自身安全、运行时安全&#xff0c;保障开发者权益&#xff0c;是鸿蒙应用生态构建的核心目标。 应用生命周期主要…

汽车焊机数据通信:Profinet转Canopen网关的神奇连接

在汽车制造领域&#xff0c;汽车焊机的高效、稳定运行对于整车质量至关重要。而Profinet转Canopen网关在汽车焊机的数据通信中发挥着关键作用。 Profinet是一种广泛应用于工业自动化领域的通信协议&#xff0c;具有高速、实时、可靠等特点。Canopen则在汽车电子等领域有着广泛…

【Qt笔记】QTabWidget控件详解

目录 引言 一、基本功能 二、核心属性 2.1 标签页管理 2.2 标签位置 2.3 标签形状 2.4 标签可关闭性 2.5 标签可移动性 三、信号与槽 四、高级功能 4.1 动态添加和删除标签页 4.2 自定义标签页的关闭按钮行为 4.3 标签页的上下文菜单 五、样式设置 六、应用示例…

【Linux入门】基本指令(一)

目录 一.使用环境 二.快捷键 三. 登录与用户管理 1.ssh root[ip地址] 2.whoami 3.ls /home 4.adduser [用户名] 5.passwd [用户名] 四.目录文件操作 1.ls 2.pwd 3.cd 4.touch 5.mkdir 6.rm 7.cp 五.命令手册 一.使用环境 云服务器&#xff1a;市面上有很多&am…

大厂里为什么都在运用精益六西格玛管理?

近年来&#xff0c;大型企业&#xff08;简称“大厂”&#xff09;为了保持其市场领先地位和持续盈利能力&#xff0c;不断探索并引入先进的管理理念和方法。其中&#xff0c;精益六西格玛管理作为一种综合性的质量管理和流程优化工具&#xff0c;正被越来越多的企业所采用。本…

Junit与Spring Test简单使用

Junit与Spring Test简单使用 Junit5简介Junit5 注解Junit5与Spring结合 差异概览MockingMockBeanSpyBeanDemo 注意事项 又要写测试代码了&#xff0c;总结记录一下。 Junit5简介 与单一模块设计的Junit4不同,Junit5引入了模块化架构,由三个主要子项目组成&#xff1a; JUnit Pl…

九芯电子NRK330X智能风扇离线语音控制方案

随着科技的快速发展&#xff0c;离线语音识别技术逐渐成为智能家居领域的重要组成部分。它能够将人类的语音转化为计算机可识别的数字信号&#xff0c;并在不需要联网的情况下&#xff0c;从而实现对各种设备的智能控制。在NRK330X智能风扇方案中&#xff0c;这一技术得到了广泛…