我是相当新的以(虽然与公平的位SQL的经验),和我目前正在努力与把适当的查询在一起。 我有2个布尔的领域 isPlayer
和 isEvil
这一条是 true
或 false
上。 根据这一点,我要拆我的数据集成4个小组:
- isPlayer:真的,isEvil:true
- isPlayer:真的,isEvil:假
- isPlayer:假,isEvil:true
- isPlayer:假,isEvil:假
这些团体,我希望随机排序在自己,然后将它们连接是一个长长的清单,我可以分. 我想要做的内部查询,因为这似乎是"正确的"的方式来做到这一点,因为我会做同样在SQL。 在该列表中,集团将按顺序,从第一次所有条目的的第1组中的一个随机的顺序,那么所有条目的第2组中的一个随机的顺序,那么所有项目3的组等。 . 这是必要的,随机性的排序可重复的,如果给予同样的投入,因此,如果分类是根据 random_score
理想的是我会使用种子的随机性。
我可以建立一个单一的查询,但是我怎么把4吗?
作方法,我发现迄今为止 MultiSearch 和 分离Max Query. MultiSearch看来似乎 不支持分页. 关于析取最大的查询这可能是我失去树木森林,但我苦苦挣扎在具有查询是随机排只能在自己之前添加他们到另一个。
在这里,我怎么写一个单一的查询,现在没有 Disjunction Max Query
在这种情况下帮助:
{
"query": {
"bool": {
"should": [
{
"term": {
"isPlayer": true
}
},
{
"term": {
"isEvil": true
}
}
]
}
}
}