Redis 入门

基本数据类型和基本命令

//字符串-最大长度可达512兆
set key value
get key

//对象
hmset key value1…
hgetall key

//数组
lpush key value
lrange key start end(-1全部)

//无序set
sadd key value
smembers key

//有序set
zadd key score value
zrangebyscore key start end

参考

事务

多个命令顺序执行
mutil
cmd1…
cmd2…
exec

Redis 生存时间

EXPRIE/EXPRIEAT 设置过期时间
PERSISIT 持久化
TTL 距离过期还剩余的时间
GET SET 都会把key的过期时间置为永久

Redis 排序

数字
按照键值升序或者降序
sort key asc(升序)
sort key desc(降序)

字符串
sort key alpha asc
sort key alpha desc

限制条数
sort key limit [start] [rows] desc

根据外部key的权重排序

LPUSH uid 1
SET user_name_1 admin
SET user_level_1 9999

LPUSH uid 2
SET user_name_2 king
SET user_level_2 800

LPUSH uid 3
SET user_name_3 queen
SET user_level_3 600

LPUSH uid 4
SET user_name_4 jack
SET user_level_4 300

LPUSH uid 5
SET user_name_5 rose
SET user_level_5 860

//占位符
SORT uid BY user_level_*
//返回user_name
sort uid by user_level_* asc get user_name_*
//返回排序后的uid+user_name
sort uid by user_level_* asc get # get user_name_*


HMSET user_info_1 username admin level 1000
HMSET user_info_2 username king level 999
HMSET user_info_3 username king1 level 77
HMSET user_info_4 username king2 level 90
sort uid by user_info_*->level get user_info_*->username

RPUSH testSort4 1 2 5 8 9 20
RPUSH testSort4 43 56 90 120
//缓存结果
SORT testSort4 DESC STORE sortRes4
lrange sortRes4 0 -1

注意:
SORT命令的时间复杂度O(n+mlogm),n表示要排序的列表或者集合中的元素的个数,m表示要返回元素的个数
1》尽可能减少带排序中键的数量(使n尽可能的小)
2》使用LIMIT参数限制获取元素的个数(使m尽可能小)
3》如果要排序的数据量比较大,尽可能通过STORE缓存结果
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值