Elasticsearch range query on number in string formatHow to search for a part of a word with ElasticSearchSolr vs. ElasticSearchElasticsearch range query for stringElasticSearch - Range filter by date is not working,elasticsearch bool query combine must with ORRanged Query with ElasticSearchHow to convert this SQL query to an Elasticsearch query?Elasticsearch. Range query for strings with dashesElasticsearch date range query using two fieldsHow to use price range with nested query in ElasticSearch?

How was the murder committed?

How can I see if the data in a SQL Server table is page-compressed?

Word for an event that will likely never happen again

How much can I judge a company based on a phone screening?

Symbol: Put a smile symbol under a plus

Does fossil fuels use since 1990 account for half of all the fossil fuels used in history?

How to find directories containing only specific files

Case Condition for two lines

In which case does the Security misconfiguration vulnerability apply to?

How to remove ambiguity: "... lives in the city of H, the capital of the province of NS, WHERE the unemployment rate is ..."?

Are there really no countries that protect Freedom of Speech as the United States does?

Can lodestones be used to magnetize crude iron weapons?

How to "add" units to results of pgfmathsetmacro?

Why did IBM make public the PC BIOS source code?

Are differences between uniformly distributed numbers uniformly distributed?

Scam? Phone call from "Department of Social Security" asking me to call back

Graphs for which a calculus student can reasonably compute the arclength

Are those flyers about apartment purchase a scam?

How would timezones work on a planet 100 times the size of our Earth

Markov-chain sentence generator in Python

How big are the Choedan Kal?

What kind of liquid can be seen 'leaking' from the upper surface of the wing of a Boeing 737-800?

Why are Tucker and Malcolm not dead?

What is the difference between 王 and 皇?



Elasticsearch range query on number in string format


How to search for a part of a word with ElasticSearchSolr vs. ElasticSearchElasticsearch range query for stringElasticSearch - Range filter by date is not working,elasticsearch bool query combine must with ORRanged Query with ElasticSearchHow to convert this SQL query to an Elasticsearch query?Elasticsearch. Range query for strings with dashesElasticsearch date range query using two fieldsHow to use price range with nested query in ElasticSearch?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








2















I have an Elasticsearch index as follows




"Price": "50.99"
,

"Price": "30.99"
,

"Price": "40.99"
,

"Price": "10.99"



I'm trying to fetch the documents based on a range of price. I want to return the documents with a price range of 30-100. But it is not returning any document.



 GET index_name/_search

"query":
"bool":
"must": [
"range": "Price": "gte": 40, "lte": 100
]





Since the Price is in String format I'm not able to fetch the documents. I don't have previledges to change the index. Is there a way to query it without changing the index?










share|improve this question
























  • You need to update the mapping, that is then most efficient solution in the long run

    – Nishant Saini
    Mar 27 at 11:21


















2















I have an Elasticsearch index as follows




"Price": "50.99"
,

"Price": "30.99"
,

"Price": "40.99"
,

"Price": "10.99"



I'm trying to fetch the documents based on a range of price. I want to return the documents with a price range of 30-100. But it is not returning any document.



 GET index_name/_search

"query":
"bool":
"must": [
"range": "Price": "gte": 40, "lte": 100
]





Since the Price is in String format I'm not able to fetch the documents. I don't have previledges to change the index. Is there a way to query it without changing the index?










share|improve this question
























  • You need to update the mapping, that is then most efficient solution in the long run

    – Nishant Saini
    Mar 27 at 11:21














2












2








2


1






I have an Elasticsearch index as follows




"Price": "50.99"
,

"Price": "30.99"
,

"Price": "40.99"
,

"Price": "10.99"



I'm trying to fetch the documents based on a range of price. I want to return the documents with a price range of 30-100. But it is not returning any document.



 GET index_name/_search

"query":
"bool":
"must": [
"range": "Price": "gte": 40, "lte": 100
]





Since the Price is in String format I'm not able to fetch the documents. I don't have previledges to change the index. Is there a way to query it without changing the index?










share|improve this question














I have an Elasticsearch index as follows




"Price": "50.99"
,

"Price": "30.99"
,

"Price": "40.99"
,

"Price": "10.99"



I'm trying to fetch the documents based on a range of price. I want to return the documents with a price range of 30-100. But it is not returning any document.



 GET index_name/_search

"query":
"bool":
"must": [
"range": "Price": "gte": 40, "lte": 100
]





Since the Price is in String format I'm not able to fetch the documents. I don't have previledges to change the index. Is there a way to query it without changing the index?







elasticsearch






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 27 at 10:00









rmn.nishrmn.nish

3901 gold badge3 silver badges17 bronze badges




3901 gold badge3 silver badges17 bronze badges















  • You need to update the mapping, that is then most efficient solution in the long run

    – Nishant Saini
    Mar 27 at 11:21


















  • You need to update the mapping, that is then most efficient solution in the long run

    – Nishant Saini
    Mar 27 at 11:21

















You need to update the mapping, that is then most efficient solution in the long run

– Nishant Saini
Mar 27 at 11:21






You need to update the mapping, that is then most efficient solution in the long run

– Nishant Saini
Mar 27 at 11:21













1 Answer
1






active

oldest

votes


















0














Best way : Change the field type to float



But anyway if you want to keep the field type is string you can use painless script to do that. i.e



GET index_name/_search

"query":
"bool":
"must":
"script":
"script":
"inline": "Float.parseFloat(doc['Price.keyword'].value) >= 40 && Float.parseFloat(doc['Price.keyword'].value) <= 100",
"lang": "painless"











share|improve this answer
























    Your Answer






    StackExchange.ifUsing("editor", function ()
    StackExchange.using("externalEditor", function ()
    StackExchange.using("snippets", function ()
    StackExchange.snippets.init();
    );
    );
    , "code-snippets");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "1"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55374426%2felasticsearch-range-query-on-number-in-string-format%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    Best way : Change the field type to float



    But anyway if you want to keep the field type is string you can use painless script to do that. i.e



    GET index_name/_search

    "query":
    "bool":
    "must":
    "script":
    "script":
    "inline": "Float.parseFloat(doc['Price.keyword'].value) >= 40 && Float.parseFloat(doc['Price.keyword'].value) <= 100",
    "lang": "painless"











    share|improve this answer





























      0














      Best way : Change the field type to float



      But anyway if you want to keep the field type is string you can use painless script to do that. i.e



      GET index_name/_search

      "query":
      "bool":
      "must":
      "script":
      "script":
      "inline": "Float.parseFloat(doc['Price.keyword'].value) >= 40 && Float.parseFloat(doc['Price.keyword'].value) <= 100",
      "lang": "painless"











      share|improve this answer



























        0












        0








        0







        Best way : Change the field type to float



        But anyway if you want to keep the field type is string you can use painless script to do that. i.e



        GET index_name/_search

        "query":
        "bool":
        "must":
        "script":
        "script":
        "inline": "Float.parseFloat(doc['Price.keyword'].value) >= 40 && Float.parseFloat(doc['Price.keyword'].value) <= 100",
        "lang": "painless"











        share|improve this answer













        Best way : Change the field type to float



        But anyway if you want to keep the field type is string you can use painless script to do that. i.e



        GET index_name/_search

        "query":
        "bool":
        "must":
        "script":
        "script":
        "inline": "Float.parseFloat(doc['Price.keyword'].value) >= 40 && Float.parseFloat(doc['Price.keyword'].value) <= 100",
        "lang": "painless"












        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 27 at 11:43









        Ashraful IslamAshraful Islam

        9,2152 gold badges22 silver badges37 bronze badges




        9,2152 gold badges22 silver badges37 bronze badges





















            Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.







            Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.



















            draft saved

            draft discarded
















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55374426%2felasticsearch-range-query-on-number-in-string-format%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Obelisk of Theodosius Contents History Description Notes Bibliography Further reading External links Navigation menuAge of spirituality : late antique and early Christian art, third to seventh centuryOver 60 picturesObelisks of the World41°00′21.24″N 28°58′31.43″E / 41.0059000°N 28.9753972°E / 41.0059000; 28.97539727724550-7235741376235741376

            밀양 대씨 역사 각주 함께 보기 둘러보기 메뉴밀양 대씨

            1973년 목차 사건 문화 탄생 사망 노벨상 달력 둘러보기 메뉴