2014-05-15 6 views
19

इतनी सारी वेबसाइटों पर वे रेंज क्वेरी का उपयोग करके एलैस्टिकसेर्च से डेटा पूछने के तरीके को सिखाते हैं। मैं ऐसे डेटा से पूछना चाहता हूं जो इस तरह लुसीन स्टाइल क्वेरी स्ट्रिंग का उपयोग करके Elasticsearch से किसी निश्चित संख्या से कम या उसके बराबर है।लुसीन क्वेरी स्ट्रिंग लोचदार खोज "कम या बराबर" [यूआरआई खोज]

fieldname:[* TO 100] 

या

fieldname:["*" TO "100"] 

मैं अन्य स्वरूपों में की कोशिश की है, लेकिन उन में से कोई भी काम किया। क्या कोई मेरी मदत कर सकता है?

+0

मैं अपने जवाब को अद्यतन किया है .. – BlackPOP

+0

अगर आप जवाब पूछना फिर से .. सवाल छोड़ देना नहीं है से संतुष्ट नहीं हैं: यहाँ एक उदाहरण है। उत्तर स्वीकार करें और दूसरों की सहायता करें .. – BlackPOP

उत्तर

1

मुझे लगता है कि आप बराबर की तुलना में कम करने के लिए 100.

curl -XPOST "http://hostname:9200/index/try/_search" -d' 
{ 
"query": { 
    "range": { 
     "FieldName": { 
     "lte" : 100 
     } 
    } 
    } 
}' 

पीएचपी API ग्राहक

array(
'query' => array(
    'range' => array(
     'FieldName' => array(
      array("lte" => 100) 
     ) 
    ) 
) 
); 
अधिक प्रश्नों के लिए

.. refer

क्वेरी के साथ दस्तावेजों को क्वेरी करना चाहते हैं प्रारूप के लिए आपने पूछा ..!

curl -XPOST "http://hostname:9200/index/type/_search?q=FieldName:[* to 100]" 

HOpe यह मदद करता है ..!

+1

मुझे लगता है कि यह एक लुसीन क्वेरी स्ट्रिंग नहीं है। मैं एक लोचदार खोज PHP क्लाइंट एपीआई का उपयोग करता हूं और मैं क्वेरी डेटा के पैरामीटर के रूप में JSON या सरणी प्रारूप का उपयोग नहीं करना चाहता हूं बल्कि इसके बजाय ल्यूसीन क्वेरी स्ट्रिंग का उपयोग करना चाहता हूं। –

+0

ईएस संस्करण का आप किस प्रकार उपयोग कर रहे हैं ??? – BlackPOP

+0

यह 1.0 है। आशा है कि आप मेरी मदद कर सकते हैं। –

29

आप क्वेरी स्ट्रिंग सिंटेक्स (http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-query-string-query.html) के साथ यूआरआई खोजें (http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-uri-request.html)

सीमाओं

संयुक्त पर्वतमाला उपयोग करना चाहते हैं जाएगा

सीमाओं की तारीख, संख्यात्मक या स्ट्रिंग क्षेत्रों के लिए निर्दिष्ट किया जा सकता। समावेशी श्रेणियां स्क्वायर ब्रैकेट्स [न्यूनतम से अधिकतम] और विशेष घुंघराले ब्रैकेट {मिनट से अधिकतम} के साथ निर्दिष्ट हैं।

All days in 2012: 

    date:[2012/01/01 TO 2012/12/31] 

    Numbers 1..5 

    count:[1 TO 5] 

    Tags between alpha and omega, excluding alpha and omega: 

    tag:{alpha TO omega} 

    Numbers from 10 upwards 

    count:[10 TO *] 

    Dates before 2012 

    date:{* TO 2012/01/01} 

Curly and square brackets can be combined: 

    Numbers from 1 up to but not including 5 

    count:[1..5} 

Ranges with one side unbounded can use the following syntax: 

age:>10 
age:>=10 
age:<10 
age:<=10 

Note 

To combine an upper and lower bound with the simplified syntax, you would need to join two clauses with an AND operator: 

age:(>=10 AND < 20) 
age:(+>=10 +<20) 

The parsing of ranges in query strings can be complex and error prone. It is much more reliable to use an explicit range filter. 

यूआरआई खोजें

खोजें यूआरआई खोजें अनुरोध शरीर खोज खोज शार्ड्स एपीआई खोजें खाका पहलुओं एकत्रीकरण Suggesters प्रसंग Suggester मल्टी खोजें एपीआई गणना एपीआई मान्य एपीआई एपीआई टपकाने का साधन के बारे में बताएं अधिक यह API तरह बेंचमार्क

अनुरोध पैरामीटर प्रदान करके एक खोज अनुरोध को यूआरआई का उपयोग करके पूरी तरह से निष्पादित किया जा सकता है। को इस मोड का उपयोग करके एक खोज निष्पादित करते समय सभी खोज विकल्पों का खुलासा नहीं किया जाता है, लेकिन यह त्वरित "कर्ल परीक्षण" के लिए आसान हो सकता है।

$ curl -XGET 
'http://localhost:9200/twitter/tweet/_search?q=user:kimchy' 
संबंधित मुद्दे