2015-02-16 4 views
3

У меня возникла проблема с сортировкой по дате по elasticsearch. Согласно документации, представленной elasticsearch http://www.elasticsearch.org/guide/en/elasticsearch/guide/current/_sorting.htmlelasticsearch сортировать по дате не работает

Я использовал следующий код для сортировки по дате

{"sort":{"posted_on":{"order":"desc"}}} 

Следующая является результатом

{ 
"took": 3, 
"timed_out": false, 
"_shards": { 
    "total": 1, 
    "successful": 1, 
    "failed": 0 
}, 
"hits": { 
    "total": 305, 
    "max_score": null, 
    "hits": [ 
     { 
      "_index": "ads", 
      "_type": "ad", 
      "_id": "52d6945f1d41c812bf000004", 
      "_score": null, 
      "_source": { 
       "category": "Cars and Bikes", 
       "description": "Innova 2010(V) DC", 
       "posted_on": "2014-09-04T18:11:57+00:00", 
       "slug_id": "innova-2010-v-dc", 
       "title": "Innova 2010(V) DC" 
      }, 
      "sort": [ 
       "57" 
      ] 
     } 
     , 
     { 
      "_index": "ads", 
      "_type": "ad", 
      "_id": "5408accf1d41c8b8f1000001", 
      "_score": null, 
      "_source": { 
       "category": "", 
       "description": "rrrrrrrrrrfsadsadfsadfsa", 
       "posted_on": "2014-09-04T18:11:57+00:00", 
       "slug_id": "test", 
       "title": "test" 
      }, 
      "sort": [ 
       "57" 
      ] 
     } 
     , 
     { 
      "_index": "ads", 
      "_type": "ad", 
      "_id": "52d6945f1d41c812bf000003", 
      "_score": null, 
      "_source": { 
       "category": "Cars and Bikes", 
       "description": "Indica DLS 2006 for immediate sale", 
       "posted_on": "2015-02-16T12:46:10+00:00", 
       "slug_id": "indica-dls", 
       "title": "Indica DLS" 
      }, 
      "sort": [ 
       "46" 
      ] 
     } 
     , 
     { 
      "_index": "ads", 
      "_type": "ad", 
      "_id": "52d694981d41c812d800000a", 
      "_score": null, 
      "_source": { 
       "category": "Automotive", 
       "description": "MAHINDRA XYLO 2011 MAY Hyderabad registration for immediate sale cash party ", 
       "posted_on": "2015-02-16T12:46:10+00:00", 
       "slug_id": "mahindra-xylo-2011-may-hyderabad-registration", 
       "title": "MAHINDRA XYLO 2011 MAY Hyderabad registration" 
      }, 
      "sort": [ 
       "46" 
      ] 
     } 
     , 
     { 
      "_index": "ads", 
      "_type": "ad", 
      "_id": "52d694981d41c812d8000010", 
      "_score": null, 
      "_source": { 
       "category": "Automotive", 
       "description": "SWIFT LDI 2008 Black,single owner, Hyderabad Registration, Excellent Condition", 
       "posted_on": "2015-02-16T12:46:10+00:00", 
       "slug_id": "swift-ldi-2008-black", 
       "title": "SWIFT LDI 2008 Black" 
      }, 
      "sort": [ 
       "46" 
      ] 
     } 

их ничего плохого в запросе. Спасибо, Aashish

+0

Та же проблема. Вы нашли решение? Благодаря! –

+3

Да, я нашел решение. Я индексировал post_on столбец как строку. так что это была проблема. Индексирование столбца post_on, поскольку дата работала для меня. – aashish

+0

Почти то же самое на моей стороне. Я использовал тип даты, но с неправильным форматом. ElasticSearch тихо сортирует и не поднимает никаких проблем. –

ответ

1

Просто, чтобы ответить на вопрос, это как аашиш. Когда это произойдет, вы можете взглянуть на свое поле отображения и убедиться, что тип поля «Дата».

Вы также можете указать формат даты, как говорится в here

Смежные вопросы