Looking for ideas how to sort by a field that looks like 400234.12.4


#1

I have a reference field that is pseudo numeric. Sorting alphabetically
produces the wrong results.

e.g. the following values should be sorted like this:
3045.5.2
3045.5.12
3045.15.2

I can't change the reference format - to pad it with zeros.
But I did think I could create a field that was padded with zeros - and
sort using that.
I was hoping I could keep it out of the source document - but I haven't
figured out how I can do some scripted formatting yet - using perhaps a
multi-field.

I would greatly appreciate any cunning tricks that could be used to get
this done.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/34123a15-e8d3-4191-b866-671064420f44%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


(David Pilato) #2

may be using a script score function? http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html#_script_score

--
David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet | @elasticsearchfr

Le 6 mai 2014 à 11:46:51, mooky (nick.minutello@gmail.com) a écrit:

I have a reference field that is pseudo numeric. Sorting alphabetically produces the wrong results.

e.g. the following values should be sorted like this:
3045.5.2
3045.5.12
3045.15.2

I can't change the reference format - to pad it with zeros.
But I did think I could create a field that was padded with zeros - and sort using that.
I was hoping I could keep it out of the source document - but I haven't figured out how I can do some scripted formatting yet - using perhaps a multi-field.

I would greatly appreciate any cunning tricks that could be used to get this done.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/34123a15-e8d3-4191-b866-671064420f44%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/etPan.5368c292.431bd7b7.5c36%40MacBook-Air-de-David.local.
For more options, visit https://groups.google.com/d/optout.


(David Pilato) #3

I meant sort script: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-sort.html#_script_based_sorting

although score script should help as well.

--
David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet | @elasticsearchfr

Le 6 mai 2014 à 13:08:05, David Pilato (david@pilato.fr) a écrit:

may be using a script score function? http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html#_script_score

--
David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet | @elasticsearchfr

Le 6 mai 2014 à 11:46:51, mooky (nick.minutello@gmail.com) a écrit:

I have a reference field that is pseudo numeric. Sorting alphabetically produces the wrong results.

e.g. the following values should be sorted like this:
3045.5.2
3045.5.12
3045.15.2

I can't change the reference format - to pad it with zeros.
But I did think I could create a field that was padded with zeros - and sort using that.
I was hoping I could keep it out of the source document - but I haven't figured out how I can do some scripted formatting yet - using perhaps a multi-field.

I would greatly appreciate any cunning tricks that could be used to get this done.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/34123a15-e8d3-4191-b866-671064420f44%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/etPan.5368c2d6.62bbd95a.5c36%40MacBook-Air-de-David.local.
For more options, visit https://groups.google.com/d/optout.


#4

Thanks.

On Tuesday, 6 May 2014 12:09:10 UTC+1, David Pilato wrote:

I meant sort script:
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-sort.html#_script_based_sorting

although score script should help as well.

--
David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet https://twitter.com/dadoonet | @elasticsearchfrhttps://twitter.com/elasticsearchfr

Le 6 mai 2014 à 13:08:05, David Pilato (da...@pilato.fr <javascript:>) a
écrit:

may be using a script score function?
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-function-score-query.html#_script_score

  -- 

David Pilato | Technical Advocate | Elasticsearch.com
@dadoonet https://twitter.com/dadoonet | @elasticsearchfrhttps://twitter.com/elasticsearchfr

Le 6 mai 2014 à 11:46:51, mooky (nick.mi...@gmail.com <javascript:>) a
écrit:

I have a reference field that is pseudo numeric. Sorting alphabetically
produces the wrong results.

e.g. the following values should be sorted like this:
3045.5.2
3045.5.12
3045.15.2

I can't change the reference format - to pad it with zeros.
But I did think I could create a field that was padded with zeros - and
sort using that.
I was hoping I could keep it out of the source document - but I haven't
figured out how I can do some scripted formatting yet - using perhaps a
multi-field.

I would greatly appreciate any cunning tricks that could be used to get
this done.

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearc...@googlegroups.com <javascript:>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/34123a15-e8d3-4191-b866-671064420f44%40googlegroups.comhttps://groups.google.com/d/msgid/elasticsearch/34123a15-e8d3-4191-b866-671064420f44%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/ec333800-e092-4e8a-b9d1-5ea3492f4459%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


(system) #5