hi On Sun, Feb 17, 2019 at 09:40:43AM +0100, Jan Høydahl wrote: > q=kind:animal&wantedweight=50&sort=abs(sub(weight,wantedweight)) asc
*sort function* looks a great way. I did not mention very clearly I d'like to use edsimax and add some weight to some fields (such *description* in the below example). So *sorting* looks not sufficient. After playing around with distance functions it turns out this one looks quite sufficient: ?defType=edismax&q=kind:animal&carnivore&qf=description^3&boost=div(1,abs(sub(weight,50))) this means: "give me all animals having carnivore in the description, and order them given their weight is near 50 kg and carnivore is relevant in the description" Does this make sence ? On Sun, Feb 17, 2019 at 09:40:43AM +0100, Jan Høydahl wrote: > q=kind:animal&wantedweight=50&sort=abs(sub(weight,wantedweight)) asc > > Jan Høydahl > > > 16. feb. 2019 kl. 17:08 skrev Dave <hastings.recurs...@gmail.com>: > > > > Sounds like you need to use code and post process your results as it sounds > > too specific to your use case. Just my opinion, unless you want to get into > > spacial queries which is a whole different animal and something I don’t > > think many have experience with, including myself > > > >> On Feb 16, 2019, at 10:10 AM, Nicolas Paris <nicolas.pa...@riseup.net> > >> wrote: > >> > >> Hi > >> > >> Thanks. > >> To clarify, I don't want to sort by numeric fields, instead, I d'like to > >> get sort by distance to my query. > >> > >> > >>> On Thu, Feb 14, 2019 at 06:20:19PM -0500, Gus Heck wrote: > >>> Hi Niclolas, > >>> > >>> Solr has no difficulty sorting on numeric fields if they are indexed as a > >>> numeric type. Just use "&sort=weight asc" If you're field is indexed as > >>> text of course it won't sort properly, but then you should fix your > >>> schema. > >>> > >>> -Gus > >>> > >>> On Thu, Feb 14, 2019 at 4:10 PM David Hastings > >>> <hastings.recurs...@gmail.com> > >>> wrote: > >>> > >>>> Not clearly understanding your question here. if your query is > >>>> q=kind:animal weight:50 you will get no results, as nothing matches > >>>> (assuming a q.op of AND) > >>>> > >>>> > >>>> On Thu, Feb 14, 2019 at 4:06 PM Nicolas Paris <nicolas.pa...@riseup.net> > >>>> wrote: > >>>> > >>>>> Hi > >>>>> > >>>>> I have a numeric field (say "weight") and I d'like to be able to get > >>>>> results sorted. > >>>>> q=kind:animal weight:50 > >>>>> pf=kind^2 weight^3 > >>>>> > >>>>> would return: > >>>>> name=dog, kind=animal, weight=51 > >>>>> name=tiger, kind=animal,weight=150 > >>>>> name=elephant, kind=animal,weight=2000 > >>>>> > >>>>> > >>>>> In other terms how to deal with numeric fields ? > >>>>> > >>>>> My first idea is to encode numeric into letters (one x per value) > >>>>> dog xxxxxxxxxxxxxxxxxxxxxxxxx > >>>>> tiger xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx > >>>>> elephant > >>>>> > >>>> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx > >>>>> > >>>>> and the query would be > >>>>> kind:animal, weight:xxxxxxxxxxxxxxxxxxxxxxx > >>>>> > >>>>> > >>>>> How to deal with numeric fields ? > >>>>> > >>>>> Thanks > >>>>> -- > >>>>> nicolas > >>>>> > >>>> > >>> > >>> > >>> -- > >>> http://www.the111shift.com > >> > >> -- > >> nicolas > -- nicolas