redis常用操作数据命令及场景

本文详细介绍了Redis中的五种主要数据结构:Hash、List、Set、Sorted Set和String的基本特性和常用命令,适用于初学者了解Redis的基本使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

娱乐而已,不喜勿喷

redis的数据结构.

1.储存Hash
String Key和String Value的map容器
每个hash可以存储4294967295个键值对
常用命令
hset myhash key value 设置myhash对用的map集合
hget myhash key       获取key对应的值
hgetall myhash        获取所有的值
hdel myhash key       删除key对应的值
hmset myhash key1 value1 key2 value2   设置myhash多个键值对
del myhash            删除myhash集合
hincrby myhash key 5  设置key对应的值加5
hexists myhash key    判断myhash中key是否存在,如果存在返回1,否则未0
hlen myhash           返回myhash中key的个数
hkeys myhash          返回myhash中所有key的名称
hvalues myhash        返回myhash中所有value对应的值
2.储存list
使用数组ArrayList的方式储存数据
使用LinkedListd双向链表的方式储存数据
常用命令
lpush mylist  value1 value2 value3 从左端开始添加
rpush mylist1  value1 value2 value3 从右端开始添加
lrange mylist  0 5           查看列表从0开始5结束
lpop  mylist                 弹出头部 value3,value3将不在mylist中
rpop  mylist                 弹出尾部 value1,value1将不在mylist中
llen mylist                  查看列表个数
lpushx mylist value3         将value3插入最左端
rpushx mylist value1         将value插入最右端
lrem  mylist   2 value1      删除2个value1
lset  mylist  3  value4      向下标为三插入value4
linsert mylist before value1 value5  在value1之后插入value5
linsert mylist after  value1 value5   在value1之前插入value5
rpoplpush  mylist1 mylist2  将mylist1中的value1弹出插入到mylist2中
3.储存set
set集合中不允许出现重复元素
set可包含的最大元素数是4294967295
使用场景
跟踪一些唯一性数据
用于维护数据对象之间的关联关系
常用命令
sadd myset value1 value2 value3   添加集合
srem myset value1    删除value1
smembers  myset                   查看myset数据
sismember myset value1        查看value1是否存在于myset,如果存在返回1,否则返回0
sdiff  myset1 myset2              差集运算
sinter myset1 myset2              交集运算
sunion myset1 myset2  并集运算
scard myset                       返回myset个数
srandmember  myset                返回myset随机一个值
sdiffstore  myset myset1 myset2   将myset1和myset2差集储存到myset中
sinterstore myset myset1 myset2   将myset1和myset2交集储存到myset中
sunionstore myset myset1 myset2   将myset1和myset2并集储存到myset中
4.储存sorted-set
使用场景
游戏排名
微博热点话题
大型在线游戏积分排行榜
构建索引数据
常用命令
zadd mysort num1 name1 num2 name2   添加元素
zscore mysort  name1                 返回num1 查看某个name对应的num值
zcard mysort                         查看mysort中的元素个数
zrem mysort name     删除mysort中name元素
zrange mysort 0 -1                   查看mysort中元素name的名称
zrange mysort 0 -1 withscores       查看mysort中元素name的名称和num值(从小到大排序)
zrevrange mysort 0 -1 withscores   查看mysort中元素name的名称和num值(从大到小排序)
zremrangebyrank mysort 0 4   按照排序删除4个元素
zremrangebyscore mysort 80 100       按照num范围删除80到100之间的元素
zrangebyscore  mysort  0 100       查中num从0到100之间的元素name名称
zrangebyscore  mysort  0 100 withscores 查中num从0到100之间的元素name名称和num
zrangebyscore  mysort  0 100 withscores limit 0 2 查中num从0到100之间的2个元素name名称和num
zincrby mysort 3 name   修改mysort中name对应的num个数加3
zcount  mysort 80 100 查询mysort中num在80到100中的元素有几个
5.keys的通用操作
常用命令
keys *  查看所有keys
keys my?  查看以my开头的keys
del mylist1 mylist2  删除keys为mylist2和mylist2
exists mylist1     查看mylist1是否存在,存在返回1,否则返回0
rename mylist mylist1  重命名将mylist名称改为mylist1
expire mylist  1000  设置过期时间1000秒
ttl mylist           所剩超时时间
type mylist          返回数据类型
6.事物操作
开启事物: multi (之后的命令将会存储到队列中)
提交事物: exec  
事物回滚: discard
7.储存string
常用命令
set key value  赋值
get key        获取key对应值
getset key  value  先获取在赋值
del  key         删除key值
incr key           如果有key直接将值加1,否则创建一个key值0
decr key   如果有key直接将值减1,否则创建一个key值0
incrby key 3            将指定的可以加3
decrby key 3 将指定的可以减3
append key 5            在key后面追加5,如果key不存在这直接创建一个key,value值为5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值