请教 es7 中的排序规则问题

2021-08-27 22:54:52 +08:00
 KarlC
请问可以自定义某个字段的排序规则吗,例如按照 1 、0 、2,而不是升序或者降序,谢谢!
2126 次点击
所在节点    Elasticsearch
11 条回复
xiaoming1992
2021-08-27 23:06:43 +08:00
``` typescript

type T = 'what ever'

// 这儿写入你希望的排序
const SORT_LIST: T[] = []

function sort(a: T, b: T) {
. const idxA = SORT_LIST.indexOf(a)
. const idxB = SORT_LIST.indexOf(b)
. return idxA - idxB
}

```
xiaoming1992
2021-08-27 23:07:23 +08:00
@xiaoming1992 写得比较捞
xiaoming1992
2021-08-27 23:08:19 +08:00
md 好像回复错了,此 es7 非彼 es7...
Belmode
2021-08-28 00:32:17 +08:00
@xiaoming1992 笑死了,你这 B 不装完,不准走!!😂
SuperManNoPain
2021-08-28 01:11:22 +08:00
😅
IvanLi127
2021-08-28 01:31:33 +08:00
我还在想怎么会有人问 es7,不都 es6 嘛 原来不是这个 es 而是那个 es
update
2021-08-28 09:07:20 +08:00
script 排序
大致类似:
if (doc['字段名'].value == 1) {
return 1
} elseif (doc['字段名'].value == 0){
return 2
} elseif (doc['字段名'].value == 2){
return 3
}

具体搜下相关文档
KarlC
2021-08-28 09:39:35 +08:00
@update 好的谢谢,我去看看
pjntt
2021-08-28 11:38:22 +08:00
可以试一下用 script 的聚合方式
KarlC
2021-08-28 14:03:57 +08:00
@pjntt 用 script 解决了,谢谢
goodboy95
2021-08-28 16:05:59 +08:00
@xiaoming1992 我一个后端 C#开发,看到 ES 第一反应也是 ECMAScript

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/798435

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX