点击蓝字关注我吧
【本文详细介绍了非关系型数据库Redis中排序的概念和具体实例,欢迎读者朋友们阅读、转发和收藏!】
1 基本概念
redis 支持对 list 、 set 和 sorted set 元素的排序。排序命令是 sort 完整的命令格式如下:
SORT key [BY pattern] [LIMIT start count] [GET pattern] [ASC|DESC] [ALPHA] [STORE dstkey]
1.1 sort key
这个是最简单的情况,没有任何选项就是简单的对集合自身元素排序并返回排序结果。下面给个例子:
redis> lpush ml 12
(integer) 1
redis> lpush ml 11
(integer) 2
redis> lpush ml 23
(integer) 3
redis> lpush ml 13
(integer) 4
redis> sort ml
1. "11"
2. "12"
3. "13"
4. "23"1.2 [ASC|DESC] [ALPHA]
sort 默认的排序方式( asc )是从小到大排的 , 当然也可以按照逆序或者按字符顺序排。逆序可以加上 desc 选项,想按字母顺序排可以加 alpha 选项,当然 alpha 可以和 desc 一起用。
1.3 [BY pattern]
除了可以按集合元素自身值排序外,还可以将集合元素内容按照给定 pattern 组合成新的 key ,并按照新 key 中对应的内容进行排序。
1.4 [GET pattern]
也可以通过 get 选项去获取指定 pattern 作为新 key 对应的值。
1.5 [LIMIT start count]
limit 选项可以限定返回结果的数量。
1.6 [STORE dstkey]
如果对集合经常按照固定的模式去排序,那么把排序结果缓存起来会减少不少 cpu 开销。使用 store 选项可以将排序内容保存到指定 key 中。保存的类型是 list。
我知道你在看哟
领取专属 10元无门槛券
私享最新 技术干货