Elastic Search : Mapping date format and sort by date
While working on the job board for Socketloop.com recently, I need to sort the Elastic Search result based on the date when the entry is created.
Before the sorting part can happen, first the mappings need to be configured with the type "date" with a proper formatting.
"postDate": {"type": "date", "format" : "yyyy-MM-dd HH:mm:ss"}
and below is a snippet from the Elastic Search mapping.
"mappings" : {
"people": {
"properties": {
"username": {"type": "string"},
"postDate": {"type": "date", "format" : "yyyy-MM-dd HH:mm:ss"}
}
}
and add the 'sort' section in my Elastic Search query
$searchquery = '{
"size" : 9999,
"sort" : [
{ "postDate" : {"order" : "desc"}}
]
}';
and the result be seen at https://profession.socketloop.com/people (still pretty new and not many records to sort for the moment - March 2015)
Reference :
http://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-date-format.html
See also : PHP : How to parse ElasticSearch JSON ?
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+4.6k PHP : Convert CSV to JSON with YQL example
+7.9k Golang : Populate or initialize struct with values example
+9.4k Golang : Underscore string example
+3.9k PHP : Extract part of a string starting from the middle
+6k Golang : How to iterate a slice without using for loop?
+22.8k Golang : Find biggest/largest number in array
+30.1k Golang : Math pow(the power of x^y) example
+10.7k Golang : Detect user location with HTML5 geo-location
+4.2k Unix/Linux : secure copying between servers with SCP command examples
+12k CodeIgniter : "Fatal error: Cannot use object of type stdClass as array" message
+6k Golang : A simple forex opportunities scanner