फीचर क्लास में टेबल पर एक-से-कई जुड़ते हैं


10

मैं एक उन्नत लाइसेंस के साथ ArcMap 10.2.2 का उपयोग कर रहा हूं। मैंने अन्य बुनियादी विश्लेषणों के लिए ArcMap का उपयोग किया है, लेकिन कार्यक्रम के लिए काफी नया है और इसमें केवल बुनियादी कोडिंग कौशल है, जिसमें ArcMap में SQL कोड बिल्डरों का उपयोग करके बहुत ही बुनियादी प्रश्नों के बाहर कोई SQL अनुभव नहीं है ।

मेरे पास प्रजातियों की भौगोलिक श्रेणियों के बहुभुज हैं और मेरे पास उन प्रजातियों द्वारा किए गए रोगजनकों / रोगों की एक सूची है। कुछ प्रजातियां कई रोगजनकों को ले जाती हैं। एक आदर्श दुनिया में, मैं रेंज के बहुभुजों को प्रजातियों + रोगजनकों की तालिका में शामिल करूंगा और बहुभुज / स्थानिक डेटा रखूंगा, लेकिन ऐसा नहीं लगता है कि ऐसा करने के लिए एक जीआईएस उपकरण है (मैं जा रहा हूं) बाद में अतिव्यापी रोगजनकों की गणना करें, इसलिए यह महत्वपूर्ण है कि प्रत्येक प्रजाति-रोगज़नक़ संयोजन की अपनी विशेषता है, बजाय एक विशेषता के जिसमें कई रोगजनकों के लिए जानकारी है)। ये मेरे डेटा की तरह हैं (# 1 & # 2, # 3 बाद के लिए):

स्थानिक सुविधाओं के लिए विशेषता तालिका:

स्थानिक सुविधाओं के लिए विशेषता तालिका

बिना किसी स्थानिक डेटा के तालिका:

स्थानिक डेटा के बिना तालिका

(कृपया ध्यान दें कि ये वास्तविक डेटा नहीं हैं, और रोगज़नक़-प्रजाति संयोजन वास्तविक नहीं हो सकते हैं। मेरे पास वास्तव में 115 बहुभुज और 519 टेबल पंक्तियाँ हैं। प्रजातियाँ 1-40 रोगजनकों के बीच कहीं भी ले जाती हैं और इस प्रकार प्रजातियों में 1-40 पंक्तियों के बीच कहीं भी है। मेरी टेबल)

एक अतिरिक्त बोनस के रूप में, भविष्य के विश्लेषणों के कारण जो मुझे करने की आवश्यकता है, मैं आदर्श रूप से यह एक-से-कई जुड़ने में सक्षम होना चाहूंगा, ताकि मैं तालिका से डेटा का एक अतिरिक्त स्तंभ रख सकूं (उदाहरण के लिए नीचे देखें) यह कैसे लग सकता है)। हालांकि, यह कम महत्वपूर्ण है क्योंकि अगर मैं यह पता लगा सकता हूं कि कैसे जुड़ना है, तो मैं विश्लेषण को फिर से कर सकता हूं।

अतिरिक्त क्षेत्र के साथ स्थानिक डेटा के बिना तालिका

वहाँ कुछ समाधान है कि मैं इस समस्या के लिए मिल रहे हैं, लेकिन वे नीचे सूचीबद्ध कारणों के लिए मेरे लिए काम नहीं किया:

समाधान 1: डेविड ऑल्बर्स का ब्लॉग - मैं एक नौसिखिए का बहुत अधिक पता लगा रहा हूं कि नई स्क्रिप्ट को कैसे संपादित किया जाए और यह पता लगाया जाए कि इसे आर्कप्स में कैसे आयात किया जाए। मैंने पुरानी स्क्रिप्ट की कोशिश की और इसने टेस्ट, टेस्ट_1, टेस्ट_1_1, टेस्ट_1_1_1 इत्यादि शीर्षक से खाली पॉलीगोन का एक टन उत्पन्न किया।

समाधान 2: एक-से-कई सम्मिलित हों - मैंने मेक क्वेरी तालिका उपकरण का उपयोग करने का प्रयास किया (और मुझे कोई SQL ज्ञान नहीं है, हालांकि मैंने अभिव्यक्ति बिल्डर का उपयोग किया है) और मुझे ERROR 000383 मिला: तालिका के साथ समस्या, कार्यस्थान नहीं मिल रहा है & निष्पादित करने में विफल (MakeQueryTable)। मेरी सभी फाइलें एक ही फ़ोल्डर में हैं, लेकिन वे जियोडैटेबेस में नहीं हैं।


1
Make Query Table डेटाबेस के साथ ही काम करेगा
FelixIP

1
Make Query Table को एक ही fgdb में सभी डेटा की आवश्यकता होती है।
klewis

जवाबों:


22

सुविधाओं को गुणा करने के लिए (आर्कगिस 10.1 या उससे ऊपर के लोगों के लिए उपलब्ध)।

  1. सुविधाओं और तालिका को एक ही फाइल जियोडैटेबस में रखें (इसके लिए आपको आकृतिफाइल / एक्सेल / डीबीएफ फ़ाइलों को जियोडैटबेस में काम करना चाहिए)।
  2. सुनिश्चित करें कि आपके पॉलीगनों में एक अद्वितीय आईडी फ़ील्ड है जिसे संरक्षित किया जाएगा (आप एक लंबा फ़ील्ड बना सकते हैं और उसमें ऑब्जेक्ट की गणना कर सकते हैं ताकि ऑब्जेक्ट वैल्यू खो न जाए)।
  3. मिलान फ़ील्ड पर सुविधाओं (स्थानिक डेटा) में तालिका (विशेषताएँ, कोई स्थानिक डेटा) का एक मानक शामिल करें। ध्यान दें कि विशेषताओं की विशेषता तालिका (स्थानिक डेटा) में वही विशेषताएं होंगी जो उसने पहले की थीं, लेकिन इस बारे में चिंता न करें, वे सभी अगले चरण में दिखाई देते हैं।
  4. एक नई सुविधा वर्ग के रूप में समान जियोडेटाबेस की सुविधाओं को निर्यात करें (सामग्री की तालिका से परत पर क्लिक करें और निर्यात चुनें)। ध्यान दें कि निर्यात की गई सुविधाओं की विशेषता तालिका में सुविधाओं की संख्या में अब सही संख्या में विशेषताएं हैं, मूल तालिका (गुण, कोई स्थानिक डेटा के साथ) के समान या, कई से जुड़ने की स्थिति में, एक पूर्ण सेट। सुविधाओं और संबंधित रिकॉर्ड के सभी संयोजन के लिए सुविधाओं की।

सुविधाएँ एक नई सुविधा वर्ग में आएँगी जहाँ हर सुविधा मौजूद होगी (भले ही उसका तालिका में मिलान न हो) और जहाँ पहले 1: M मैच था, वहाँ सुविधाओं को 1: 1 बनाने के लिए गुणा किया जाएगा प्रत्येक सुविधा का मिलान इसकी सभी तालिका प्रविष्टियों से होता है। चरण 2 में आपके द्वारा बनाई गई अद्वितीय ID फ़ील्ड आपको बहुभुज बहुभुजों को मूल एकल बहुभुज सेट से संबंधित करने की अनुमति देगी। गुणित सुविधाओं के नए फ़ीचर वर्ग के साथ आप टेबल फ़ील्ड्स, सारांश, स्पैटियल जॉइन आदि पर चयन कर सकते हैं।

यदि आप एक अद्वितीय आईडी मान उत्पन्न करना चाहते हैं जो प्रत्येक अद्वितीय प्रजातियों और रोग संयोजन का प्रतिनिधित्व करता है, तो आप इस ब्लॉग पोस्ट में वर्णित टूल के 10.2 संस्करण का उपयोग कर सकते हैं । इस प्रकार की कुंजी होने से आप इसका उपयोग मेक टेबुल सेट अप का उपयोग करके एक वास्तविक बहु-क्षेत्र संबंध बनाने के विकल्प के रूप में एक बहु-क्षेत्र संबंध के आधार पर सारांश तालिकाओं और आँकड़ों में मानक जुड़ने के लिए कर सकते हैं।

यहाँ esri से एक अच्छा संदर्भ है: https://support.esri.com/en/technical-article/000001228


पूरी तरह से काम करता है जब जियोडेटाबेस के भीतर निर्यात किया जाता है!
MooseGirl

1
मैंने अपने चरण 4 को यह बताने के लिए संशोधित किया है कि निर्यात मूल भूगोल के समान ही जियोडैटबेस में एक नई सुविधा वर्ग के लिए होना चाहिए। उस प्रक्रिया का पालन हमेशा काम करना चाहिए, हालांकि यह संभव है कि स्रोत और आउटपुट डेटा संग्रहीत किए जाने के कुछ रूपों को भी अनुमति दी जाए।
रिचर्ड फेयरहर्स्ट

इससे पहले यह स्पष्ट था (हालांकि भविष्य में हताश लोग निश्चित रूप से इसे वर्तनी की सराहना करेंगे), लेकिन मूल रूप से मैं ठीक से जियोडेटाबेस फ़ोल्डर (या कुछ) से जुड़ा नहीं था, क्योंकि यह मुझे जियोडेटाबेस को निर्यात नहीं करने देगा। मैं फिर से शुरू हुआ और यह ठीक काम किया।
मोसगिरल

1
मैंने कहा कि सम्मिलित विशेषताओं में विशेषताओं की सही संख्या नहीं होगी और निर्यात की गई सुविधाएँ होंगी। यह मुझे बहुत निराश करता है जब मैंने यह कोशिश की, जब तक कि मैं सभी चरणों से नहीं गुज़रा।
नाइटी

यह पढ़ता है कि # 3 में एक लापता 'नहीं' है, "... notसुविधाओं की समान संख्या होगी ..."
मैट विल्की

-2

SQL क्वेरी:

SELECT spp, disease, type
FROM table1, table2
WHERE table1.bimonial = table2.spp;
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.