Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sorting Elasticsearch按字段排序,如果为空,则使用另一个字段_Sorting_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Sorting,elasticsearch" /> elasticsearch,Sorting,elasticsearch" />

Sorting Elasticsearch按字段排序,如果为空,则使用另一个字段

Sorting Elasticsearch按字段排序,如果为空,则使用另一个字段,sorting,elasticsearch,Sorting,elasticsearch,我的Post模型具有lastRepliedTime和createdTime属性。如何按lastRepliedTime对该Post进行排序,但当其值为null时,我使用createdTime作为排序值 例如,我有以下数据: ID createdTime lastRepliedTime 1 2015-05-27 13:48:10 2015-06-04 16:34:43 2 2015-06-09 05:23:38 2015-06-24 00:30:06 3 2015

我的
Post
模型具有
lastRepliedTime
createdTime
属性。如何按
lastRepliedTime
对该
Post
进行排序,但当其值为null时,我使用
createdTime
作为排序值

例如,我有以下数据:

ID  createdTime          lastRepliedTime
1   2015-05-27 13:48:10  2015-06-04 16:34:43
2   2015-06-09 05:23:38  2015-06-24 00:30:06
3   2015-06-09 17:34:56  NULL
如果我按升序排序,我希望排序结果如下:

ID  createdTime          lastRepliedTime
1   2015-05-27 13:48:10  2015-06-04 16:34:43
3   2015-06-09 17:34:56  NULL
2   2015-06-09 05:23:38  2015-06-24 00:30:06
我在中找到了使用MySQL的解决方案。但是有没有办法使用Elasticsearch对其进行排序?

您尝试过吗

{
    "sort": [
        { "lastRepliedTime": { "order": "asc" }},
        { "createdTime": { "order": "asc" }}
    ],
    "query" : {
       "match_all" : { }
    }
}

它没有给出我想要的结果。我用一个例子更新了这个问题。非常感谢。