当前位置:网站首页>Redis基本使用1
Redis基本使用1
2022-06-10 13:39:00 【tnan2522】
在redis 中有 5种数据类型string: 字符串hash: hash (个人理解是python中的dict)list: 列表set: 集合zset: 有序集合
删除
del key
string
string 字符串, 以key - value 进行存储,
set name lowang set 设置一个键值对
mset name laowang age 10 sex 男 mset 批量设置键值对
mget name age sex mget 批量获取键值对
getrange name 1 2 获取value 并切割
getset name laoli 获取完name后设置name的值
setex aaa 10 bbb 设置aaa value的值是bbb 过期时间是10秒
setnx name laoluo 当name值不存在的时候才设置键值对 name laoluo 这样就避免了值被覆盖问题
strlen name 获取当前name对应的value字符串的长度
incr age 可以给当前key对应的value值数字+1 储存格式是字符串,但是也是可以+1的, 如果储存的是非数字格式,那么会报错
append age 110 如果key不存在,那么就将添加key键值对,如果key存在,那么就将value 添加到key对应的value的后面
hash
hash 字典 在redis存储中,以字典的形式进行存储,
hset dict name laowang 设置字典,只能设置一个键值对
hmset dict name laowang age 18 sex 男 批量设置字典,key是dict value是 {
"name": "老王", "age": "18", "sex": "男"}
hget dict name 获取字典对应的key-value 只能获取一个
hmget dic name id age 可以批量获取value
hgetall dict 获取所有key 和 value
hexists dict name 获取在dict字典中key是否存在,如果存在,返回1,不存在返回0
hkeys dict 获取dict 中所有的key
hsetnx dict name laowangba 如果dict中不存在key name ,那么就设置,如果存在,则不设置
hvals dict 获取dict中所有 的value值
list
lpush lists laowang laoli laozhao 添加 3个value值到lists列表中, 这样添加的方式是往前插,最后的数据在最前面
llen lists 查看当前列表有多少个数据
lindex lists 0 获取列表第0个数据,也可以使用负数(-1)这样获取的就是列表中最后一个数据
rpush lists laoluo 将数据添加到列表的最右边, 类似于python中的列表 append()添加到末尾
rpoplpush lists lists1 将lists列表中的最后一个数据移除添加到lists1列表中
lpop lists 删除列表中第一个元素数据
blpop lists 10 删除列表中第一个元素,如果列表中没有数据的话,会等待10秒,在10中有数据添加进来就删除,没有就等待完10秒后退出命令
lrem lists 1 aaaa 从列表的最左边开始找,删除一个值为 aaaa 的数据,如果 count 为0 时,会将列表中所以值为aaaa的数据删除,如果 count 是负数的话,会从右往前找数据进行删除,删除的值是负数的绝对值
ltrim lists 1 -1 将1到-1之间的数据保留,删除在这个区间外的数据
linsert lists after eee ggg 插入数据在 eee 后面插入, after(插入到元素后面)before (插入到元素前面)
lset lists 0 abcdefg 修改列表中下标为0的value的值
set
set 不能重复
sadd set laowang laoli 20 nan 设置set 集合,添加value laowang laoli 等value
sunion set 获取set集合 中所有 的value
sunion set set1 去重,获取两个集合中的数据,如果有重复的,只获取一次
scard set 获取集合中元素的数量,当集合不存在的时候返回的是0
srandmember set 10 随机获取set 集合中的10个元素,当不足10个的时候,获取所有
sinter set 获取所有数据
sinter set set1 获取两个集合中共有的数据
srem set 10 20 laowang 删除集合中的10 20 laowang value值, 如果集合中没有这几个元素,那么会返回0 如果值存在1个,则返回1,(只完成删除一个)
smove sets set 20 将set1 中的 20 value 移动添加到set集合最后
sismember set 20 查询set集合中是否有 20 这个元素
sdiff set set1 获取第一个集合中有的而第二个集合中没有的元素
sdiffstore sets set set1 将第一个集合中有的第二个集合中没有的元素sadd到sets 集合中
spop set 随机删除返回一个数据
zset
zadd myset 1 laowang 2 laoli get有序集合 myset 添加数据 1 老王 这个1 是排序,值越小的排越往前,当排序的值相同的时候redis会自动的进行排序,内部自动的将这些相同值的 value进行排序
zrange myset 0 -1 循环当前集合的值,通过下标来获取,在redis中,下标是负数的话就是从右往前,-1代表最后一个
zrange myset 0 -1 withscores 循环当前集合值和排序值(相当于权重),
zremrangebyrank myset 0 1 移除下标0-1之间的数据
zcard myset 获取集合中元素的数量,当列表不存在的时候返回的是0
zrem myset aaa bbb ccc 删除多个数据
zrank myset ccc 获取ccc 的索引
zremrangebyscore myset 4 5 删除分数在4 和 5之间的所以值
zcount myset 0 100 获取分数在 0 - 100之间的所以值的总数
边栏推荐
- buuctf [PHP]CVE-2019-11043
- apache atlas 快速入门
- buuctf [Discuz]wooyun-2010-080723
- 解决安装gerapy的时候报错:ERROR: Cannot uninstall ‘certifi‘. It is a distutils installed project...
- [Huang ah code] I cleaned the console of Google browser in this way
- Multithreading killer ---countdownlatch & cyclicbarrier
- 多云管理平台cmp是什么意思?谁能清楚解释一下
- [FAQ] résumé des problèmes courants et des solutions lors de l'utilisation de l'interface API rest du Service de santé sportive
- 32、树莓派的简单测试串口通信和超声波模块测距
- 解决跨海高并发崩溃难题?so easy
猜你喜欢
![[deep learning 05] cross entropy loss function](/img/00/7bf13cb86324f1e9942ce45d5cc13c.png)
[deep learning 05] cross entropy loss function
![buuctf [Discuz]wooyun-2010-080723](/img/b9/d63c9c638ff7c390c490d6fd5eafd1.png)
buuctf [Discuz]wooyun-2010-080723

Solve the problem of cross sea high concurrent crash? so easy
![buuctf [PHP]XDebug RCE](/img/e2/bcae10e2051b7e9dce918bf87fdc05.png)
buuctf [PHP]XDebug RCE

WT2003H4-16S 语音芯片按键录音及播放应用解析
![[untitled]](/img/40/8ce6b9fc0050c9ed5b8b1d05dc3c51.png)
[untitled]

Multithreading killer ---countdownlatch & cyclicbarrier

618 大促来袭,浅谈如何做好大促备战

【笔记】关于keil中的出现的编译映射内存不足的问题

机器学习中训练和验证指标曲线图能告诉我们什么?
随机推荐
新功能|Mail GPU Counter模块新增GPU图元处理和GPU Shader Cycles
【操作教程】如何正确使用海康demo工具配置通道上线?
【笔记】关于keil中的出现的编译映射内存不足的问题
[raise bar C #] how to call the base of the interface
How to deal with the interview for the fresh senior graduates who want to self-study software testing?
Ekuiper newsletter 2022-05 protobuf codec support, visual drag and drop writing rules
Kotlin practises. Take login as an example. Anko simply uses it
苹果生产线迁离,说明5G工业互联、智能制造对中国制造帮助有限
New features mail GPU counter module adds GPU primitive processing and GPU shader cycles
Multithreading killer ---countdownlatch & cyclicbarrier
SnackBar usage details
Google Earth Engine(GEE)——利用MODIS 的叶面积指数影像掩膜dem批量下载
Some coding tips
MMdetection增加评估指标precision
odoo 权限管理(访问权限及记录规则)结合实用,升级角色管理
buuctf [PHP]CVE-2019-11043
Leetcode 829. 连续整数求和
移动app性能测试有哪些需要进行?性能测试报告如何收费?
【FAQ】運動健康服務REST API接口使用過程中常見問題和解决方法總結
Notes - simple but adequate series_ The Yapi return parameter data should be an object type problem solving record