WFS क्वेरी में केवल NumberOfFeatures वापस करें


11

मैं जियोसर्वर (एक बहुभुज के भीतर सुविधाओं की तलाश) में एक गेटफिट डब्ल्यूएफएस क्वेरी चला रहा हूं, लेकिन मैं वास्तव में सभी सुविधाओं की कुल संख्या चाहता हूं। क्या इस जानकारी को वापस करने का एक तरीका है (इस उम्मीद में कि क्वेरी सभी रिकॉर्ड के बजाय थोड़ी तेज़ी से चलेगी)?

क्वेरी 10,000 से अधिक सुविधाओं पर लौट रही है, इसलिए मुझे उम्मीद है कि यदि संभव हो तो इससे फर्क पड़ेगा।

जवाबों:


12

आप "हिट" के लिए पैरामीटर परिणाम टाइप कर सकते हैं और आपको SQL में गिनती () फ़ंक्शन के समान क्वेरी में कई सुविधाएं मिलेंगी।

HTTP अनुरोध का उदाहरण प्राप्त करें:

http://localhost:8080/geoserver/wfs?request=GetFeature&typeName=topp:states&version=1.1.0&resultType=hits

एक फिल्टर के साथ HTTP पोस्ट अनुरोध उदाहरण:

<wfs:GetFeature service="WFS" version="1.1.0"
  resultType="hits"
  xmlns:topp="http://www.openplans.org/topp"
  xmlns:wfs="http://www.opengis.net/wfs"
  xmlns:ogc="http://www.opengis.net/ogc"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.opengis.net/wfs
                      http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd">
  <wfs:Query typeName="topp:states">
    <ogc:Filter>
       <ogc:FeatureId fid="states.3"/>
    </ogc:Filter>
    </wfs:Query>
</wfs:GetFeature>

धन्यवाद taudorf - कि एक इलाज का काम किया। दिलचस्प बात यह है कि खोज समय (जियोसर्वर में सीधे खोज को चलाने) में 18 सेकंड का समय लगा - प्रति फीचर सिर्फ एक फ़ील्ड वापस करते समय 41 सेकंड का विरोध।
user8262

5

बशर्ते आप WFS 1.1 का उपयोग कर रहे हों, आप परिणाम = हिट्स सेट कर सकते हैं और यह आपके क्वेरी से मेल खाने वाले रिकॉर्ड की संख्या को वापस कर देगा।

मुझे याद नहीं है कि अगर जियोसेवर ने इसे 1.0 में पोर्ट किया है, लेकिन मानक इसका समर्थन नहीं करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.