redis——基本数据类型及其命令

一、string

append key "hello" #追加字符串到key末尾,不存在则相当于set
strlen key #返回key内容的长度
incr key #key中数值增1
decr key #key中数值减1
incrby key 10 #key中数值增加10,相当于设置步长
decrby key 5 #key中数值减5,相当于设置步长

getrange key 0 3 #返回[0,3]字符串,长度是4
getrange key 0 -1 #返回全部,相当于get key
setrange key 1 xx #把1、2位置字符替换为xx

#存储对象
mset user:1:name zhangsan user:1:age 20
mget user:1:name user:1:age

使用场景

  • 存储字符串
  • 计数器、统计数据量

二、list

可以抽象成一个从左到右的双向链表

lpush list_key value1 #从左边放入value1进入list
rpush list_key value2 #从右边放入value2进入list

lrange list_key 0 -1  #查看list所有元素
lrange list_key 1 2 #查看list中[1,2]的元素,返回2个元素

lpop list_key value3 #从左边弹出一个元素,返回弹出的值
rpop list_key value4 #从右边弹出一个元素,返回弹出的值

lrem list_key 2 value5 #从list中删除2个value5的元素
ltrim list_key 1 2 #截取list,只保留原来list中[1,2]元素

rpoplpush listKey1 listKey2 #弹出listKey1右边元素,并从左放入listKey2

lset listKey 0 newValue #设置listKey索引0位置为newValue,即覆盖旧值,需要listKey存在且对应索引存在才可以设置,否则报错
linsert listKey before/after aValue newValue #在list中的aValue前或后插入newValue

三、set

sadd mySet value1 #添加元素到集合中
smembers mySet #返回set中所有元素
scard mySet #返回set中元素个数
sismember mySet value1 #判断value1是否存在于set中

spop mySet #随机弹出一个元素
srem mySet value1 #从set中移除value1

smove mySet mySet2 value1 #把mySet中value1移动到mySet2中

sdiff key1 key2 #key1与key2的差集
sinter key1 key2 #key1与key2的交集
sunion key1 key2 #key1与key2的并集

四、hash

hset myHash key1 value1 #设置hash的key-value
hget myHash key1 #获取hash的key1对应的value
hmset myHash key2 value2 key3 value #设置hash多个k-v
hmget myHash key2 key3 #获取hash多个key的值

hgetall myHash #获取hash中多有k-v
hkeys myHash #获取hash中所有key
hvalues myHash #获取hash中所有value

hincryby myHash key1 2 #hash中key1对应value数值加2,value可以是负数,相当于decr,因为hash没有对应的decr命令

hmset user:1 name tom age 20 #存放对象

五、sorted set

zadd mySet 1 key1 #添加key1到有序集合mySet中,分数1,添加成功返回1

zcard mySet #返回有序集合中元素个数
zcount mySet 1 2 #返回有序集合中分数在[1,2]区间中的元素个数

zrange mySet 0 -1 #返回有序集合中所有元素,按照分数升序返回
zrangebyscore mySet minScore maxScore  #返回有序集合分数在区间[minScore, maxScore]里是元素,按照分数升序返回。
zrangebyscore mySet -inf +inf #返回有序集合中所有元素,按照分数升序返回
zrevrange mySet 0 -1 #返回有序集合中所有元素,按照分数降序返回

zrem mySet key1 #删除有序集合中key1元素

使用场景

  • 排行榜,成绩排序
  • 带权重的消息,比如普通消息1,优先消息2

以上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值