Redis(二)数据类型

文章目录

    • 官网
    • 备注
    • 十大数据类型
      • String
      • List
      • Hash
      • Set
      • ZSet
      • Bitmap
      • HyperLogLog:
      • GEO
      • Stream
      • Bitfield

官网

英文:https://redis.io/commands/
中文:http://www.redis.cn/commands.html

备注

  1. 命令不区分大小写,key区分大小写
  2. 帮助命令help @类型,例如help @string

十大数据类型

  1. String
    k v
  2. List
    k v v v
  3. Hash
    k hk hv
  4. Set
    k v v v不重复v
  5. ZSet
    k score1 v1 score2 v2
  6. Bitmap
    k offset v
  7. HyperLogLog:
    k v v v
  8. GEO
    k longitude latitude member [longitude latitude member]
  9. Stream
    对标MQ
  10. Bitfield
    字符串变长位宽和任意没有字节对齐的指定整型位域进行寻址和修改

String

命令

k键,v为值需要填充进去,例如set test 123,其中test为key,123为value

set k v
get k
set k v keepttl
# keepttl继承设置的过期时间不会因为k的value被set就修改过期时间
# 同时获取多个键值
mset k v [k v ...]
mget k [k]
# 获取指定区间范围内的值
getrange/setrange
# 数值增减(只有数值才能增减)
INCR key # 递增数字
INCRBY key increment # 增加指定整数
DECR key # 递减数值
DECRBY key decrement # 减少指定整数
# 获取字符串内容长度和内容追加
STRLEN key
APPEND key value
# 分布式锁
setnx key value
setex # set with expire
setnx # set if not exist
# 先set再get
getset k v

List

k v v v

# 左侧加入/右侧加入/指定范围显示
lpush/rpush/lrange
lpop/rpop
# 获取列表中元素个数
llen
# 按照索引下标获得元素(从上到下)
lindex
# 数字N给定值v1 解释(删除N个值等于v1的元素)
lrem key
# 开始index结束index,截取指定范围再赋值给key
ltrim key
# 用于移除列表的最后一个元素,并将该元素添加到另一个列表并返回。
rpoplpush listsource listdist
lset key index value
linsert key before/after # 已有值/插入新值

Hash

k hk hv

hset/hget/hmset/hmget/hgetall/hdel hash
# 获取某个key内全部数量
hlen hash
# 在key里面某个值的key,有返回1 
hexists key
# 显示所有key,value
hkeys hash
hvals hash
# 表中的字段值加上指定增量值33.4。
hincrby hash k1 3
hincrbyfloat hash k1 3.4
# 表中不存在的的字段赋值,已经存在于哈希表中,操作无效。
hsetnx hash k1 45

Set

k v v v不重复v

# 添加元素
sadd key member [member...]
# 遍历集合所有元素
smembers key
# 判断元素是否在集合中
ismember key member
# 删除元素
srem key member [member...]
# 获取集合元素个数
scard 
# 集合中随机弹出[数字]个值,元素不删除
srandmember key [数字]
# 从集合中随机弹出一个元素,并删除
spop key [数字]
# 将k1里已经存在的某个值赋值给k2
smove k1 k2

集合运算

# 差集
sdiff key [key...]
# 并集
sunion key [key...]
# 交集
sinter key [key...]

ZSet

k score1 v1 score2 v2

# 添加元素
zadd key score member [score member...]
# 按照元素从小到大排序返回索引从start到stop之间的所有元素
zrange key start stop [widthscores]
# 翻转顺序
zrevrange
# 获取指定分数范围的元素
zrangebyscore key min max [widthscores] [limit offset count]
# 获取元素分数
zscore key member
# 获取元素数量
zcard key
# 某score下对应的value值,作用是删除元素
zrem key
# 增加某个元素分数
zincrby key increment  member
# 获取指定分数范围内元素个数
zcount key min max
# 从提供的键名列表中的第一个非空排序集中弹出一个或多个元素
zmpop 1 key min count 1
# 获取下标值,获得排名
zrank key values
# 逆序获取下标值
zrevrank key values

Bitmap

k offset v

# setbit 键 偏移位 value只能01
setbit key offset value
getbit key offset
# 获取
getbit key offset
# 统计字节数占用
strlen key
# 统计全部键里面含1多少个
bitcount key
# 在多个键(包含字符串值)之间执行按位操作并将结果存储在目标键中
bitop operation destkey key [key ...]

HyperLogLog:

k v v v
基数统计

在这里插入图片描述
在这里插入图片描述

GEO

k longitude latitude member [longitude latitude member]

中文乱码解决
在这里插入图片描述
geopos
在这里插入图片描述
在这里插入图片描述
geohash
在这里插入图片描述
在这里插入图片描述
geolist
在这里插入图片描述
在这里插入图片描述
geodist在这里插入图片描述
在这里插入图片描述
georadius
以给定的经纬度为中心, 返回键包含的位置元素当中, 与中心的距离不超过给定最大距离的所有位置元素。

GEORADIUS city 116.418017 39.914402 10 km withdist withcoord count 10 withhash desc
GEORADIUS city 116.418017 39.914402 10 km withdist withcoord withhash count 10 desc

Stream

对标MQ不建议使用

Bitfield

字符串变长位宽和任意没有字节对齐的指定整型位域进行寻址和修改

https://ascii.org.cn
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
溢出控制

  1. wrap:使用回绕(wrap around)方法处理有符号整数和无符号整数的溢出情况
  2. sat:使用饱和计算(saturation arithmetic)方法处理溢出,下溢计算结果为最小的整数值,而上溢计算的结果为最大的整数值
  3. fail:命令将拒绝执行那些会导致上溢或下溢情况出现的计算,并向用户返回空值表示计算未被执行

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DHCP定义

DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被系统自动安装&#…

Android笔记(二十三):Paging3分页加载库结合Compose的实现分层数据源访问

在Android笔记(二十二):Paging3分页加载库结合Compose的实现网络单一数据源访问一文中,实现了单一数据源的访问。在实际运行中,往往希望不是单纯地访问网络数据,更希望将访问的网络数据保存到移动终端的SQL…

RocketMQ5.0Pop消费模式

前言 RocketMQ 5.0 消费者引入了一种新的消费模式:Pop 消费模式,目的是解决 Push 消费模式的一些痛点。 RocketMQ 4.x 之前,消费模式分为两种: Pull:拉模式,消费者自行拉取消息、上报消费结果Push&#x…

Blender:从新手到专家的全方位指南

Blender,这款强大的开源3D建模和渲染软件,已经成为了CG行业的标准工具之一。它不仅拥有丰富的教程资源,而且还在不断发展和完善中。尽管Blender的教程主要集中在国外网站和YouTube上,但其全面的功能和易用性使它成为许多人的首选工…

宣传照(私密)勿转发

精美的海报通常都是由UI进行精心设计的,现在有100 件商品需要进行宣传推广,如果每个商品都出一张图显然是不合理的,且商品信息各异。因此需要通过代码的形式生成海报。对此,我也对我宣传一波,企图实现我一夜暴富的伟大…

海外静态IP和动态IP有什么区别?推荐哪种?

什么是静态ip、动态ip,二者有什么区别?哪种好?关于这个问题,不难发现,在知道、知乎上面的解释有很多,但据小编的发现,这些回答都是关于静态ip和动态ip的专业术语解释,普通非专业人事…

计算机毕业设计 SpringBoot的乡村养老服务管理系统 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…

log4cplus visual c++ 编译及调试小记

简介 最近在调试一款SATA加密设备,发现设备有时加密出来的数据,再解密时与明文对不上,怀疑是通信问题。因此,急需要在测试工具中加入通信日志。由于对第三方日志库都不熟悉,所以随便选了个log4cplus软件集成到现有工具…

Python中的垃圾回收机制是什么

一、写在前面: 我们都知道Python一种面向对象的脚本语言,对象是Python中非常重要的一个概念。在Python中数字是对象,字符串是对象,任何事物都是对象,而它们的核心就是一个结构体--PyObject。 typedef struct_object{i…

【数据结构——二叉树】二叉树及其应用2023(头歌习题)【合集】

目录 第1关:括号表示法创建二叉树任务描述相关知识编程要求测试说明完整代码 第2关:先序序列创建二叉树任务描述相关知识二叉树的前序遍历如何创建一颗二叉树伪代码如下: 二叉树的中序遍历 编程要求测试说明完整代码 第3关:计算二…

畅捷通的 Serverless 探索实践之路

作者:计缘,阿里云云原生架构师 畅捷通介绍 畅捷通是中国领先的小微企业财税及业务云服务提供商,成立于 2010 年。畅捷通在 2021 年中国小微企业云财税市场份额排名第一,在产品前瞻性及行业全覆盖方面领跑市场,位居中…

使用运程操作电脑向日葵安装MySQl与Navicat的安装

目录 一、向日葵 1.1、简介 1.2、应用场景 1.3、原理: 1.4、使用: 1.5、在实施中的应用场景: 二、在Windows Server2012中安装MySQL 2.1、MySQL简介 2.2、MySQL5.7安装与8.0 2.3、输入命令步骤 三、Navicat 3.1、简介 3.2、安装N…

再见2023,你好2024(附新年烟花python实现)

亲爱的朋友们: 写点什么呢,我已经停更两个月了。2023年快结束了,时间真的过得好快,总要写点什么留下纪念吧。这一年伴随着许多挑战和机会,给了我无数的成长和体验。坦白说,有时候我觉得自己好像是在时间的…

JavaBean

学习目的与要求 熟练掌握<jsp:useBean>、<jsp:setProperty>、<jsp:getProperty>等JSP的操作指令。 本章主要内容 编写JavaBean在JSP中使用JavaBean 一个JSP页面通过使用HTML标记为用户显示数据&#xff08;静态部分&#xff09;&#xff0c;页面中变量的…

BMS均衡技术

一、电池的不一致性&#xff1f; 每个电池都有自己的“个性”&#xff0c;要说均衡&#xff0c;得先从电池谈起。即使是同一厂家同一批次生产的电池&#xff0c;也都有自己的生命周期、自己的“个性”——每个电池的容量不可能完全一致。例如以下的两个原因都会造成电池不一致…

Redis缓存保卫战:拒绝缓存击穿的进攻【redis问题 三】

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 Redis缓存保卫战&#xff1a;拒绝缓存击穿的进攻 前言缓存击穿的定义和原理为何会发生缓存击穿缓存击穿的危害防范缓存击穿结语: 前言 你是否曾经遇到过系统在高并发情况下出现严重性能问题&#xff…

JavaSE学习笔记 2023-12-28 --MySQL

MySQL 1.数据库介绍 数据库:数据仓库 DataBase:简称DB,用于长期存储有结构的,大量的,共享的数据长期的:持久存储,永久存储 有结构:有类型,有内部的数据类型有关系,数据与数据之前是有关联的 大量的:大多数据库都是以文件系统存在的,可以将数据存储在磁盘中 共享的:多个应用之…

[概率论]四小时不挂猴博士

贝叶斯公式是什么 贝叶斯公式是概率论中的一个重要定理&#xff0c;用于计算在已知一些先验信息的情况下&#xff0c;更新对事件发生概率的估计。贝叶斯公式的表达式如下&#xff1a; P(A|B) P(B|A) * P(A) / P(B) 其中&#xff0c;P(A|B)表示在事件B发生的条件下事件A发生的概…

干洗店洗鞋店小程序核心功能有哪些?

在繁忙的生活中&#xff0c;我们的鞋子常常承载着风尘仆仆的故事。而洗鞋小程序&#xff0c;就是那个让您的鞋子焕然一新的魔法师。通过这个小程序&#xff0c;您可以在线预约、支付&#xff0c;查询洗鞋订单&#xff0c;并与洗鞋店铺进行互动&#xff0c;轻松享受专业的洗鞋服…

小红书如何高效引流?

近年来&#xff0c;公域流量价格不断上涨&#xff0c;私域流量的优势逐渐凸显。企业正花费大量资源和成本来获取新流量&#xff0c;但与其如此&#xff0c;不如将精力放在留存和复购上&#xff0c;从而实现业绩的新增长。其中关键在于如何有效地将公域流量转化为私域流量。 然而…