2015-08-25 126 views
0

我有這個疑問:ElasticSearch排序字段

GET /_search 
    { 
    "from" : 0, "size" : 30, 
    "query": { 
    "filtered": { 
     "query" : { 
     "query_string": { 
      "query": "((categoria.id:1752) AND (cidadeId:7300)) 
      OR ((categoria.id:1752) and (estadoId:13)) " 
     } 
     } 
    } 
    }, 
    "sort": [ 
     { "img": { "order": "desc" } } 
    ] 
} 

我想通過cidadeId = 7300,然後其他命令,但不知道如何排序

回答

0

我考慮過這樣做一個小例子:

PUT test/test/1 
{ 
    "categoria.id":1752, 
    "cidadeId":7300 
} 

PUT test/test/2 
{ 
    "categoria.id":1752, 
    "estadoId":13 
} 

PUT test/test/3 
{ 
    "categoria.id":175, 
    "cidadeId":1 
    "estadoId":13 
} 

與你在你的答案被給予一些信息,我可以給你方興未艾以下解決方案上cidadeId

排序
GET test/_search 
{ 
    "from": 0, 
    "size": 30, 
    "query": { 
    "filtered": { 
     "query": { 
     "query_string": { 
      "query": "((categoria.id:1752) AND (cidadeId:7300)) OR ((categoria.id:1752) and (estadoId:13))" 
     } 
     } 
    } 
    }, 
    "sort": [ 
    { 
     "cidadeId": { 
     "order": "asc" 
     } 
    } 
    ] 
} 

我希望這將有助於

+0

對不起,我想我是不太清楚。我首先將cidadeId等於1752的記錄(作爲示例),然後是其他cidadeId的記錄。它會是這樣的:ORDER BY字段(cidade_id ... –

+0

你還不清楚,你能提供一個具體的例子嗎?把你的例子添加到問題! – eliasah