विलय करने के लिए चुने गए 2 या अधिक पंक्तियों को देखते हुए, उनमें से एक को टेम्पलेट पंक्ति के रूप में पहचाना जाता है। अन्य पंक्तियों को अपने डेटा को टेम्पलेट के किसी भी शून्य मान कॉलम में विलय करना चाहिए।कुछ शर्तों के साथ पंक्तियों को एक पंक्ति में विलय करने का प्रयास
उदाहरण डेटा:
Id Name Address City State Active Email Date
1 Acme1 NULL NULL NULL NULL [email protected] 3/1/2011
2 Acme1 1234 Abc Rd Springfield OR 0 [email protected] 1/12/2012
3 Acme2 NULL NULL NULL 1 [email protected] 4/19/2012
कहो कि एक उपयोगकर्ता टेम्पलेट पंक्ति के रूप में पहचान 1 के साथ पंक्ति को चुन लिया है, और आईडी 2 और 3 के साथ पंक्तियों पंक्ति 1 में मर्ज करने के लिए और फिर उन्हें हटा रहे हैं। पंक्ति आईडी 1 में किसी भी शून्य मान कॉलम को भरना चाहिए (यदि कोई मौजूद है) सबसे हालिया (दिनांक कॉलम देखें) गैर-शून्य मान, और पंक्ति आईडी 1 में पहले से मौजूद गैर-शून्य मानों को छोड़ दिया जाना चाहिए। उपरोक्त डेटा पर इस क्वेरी के परिणाम वास्तव में यह होना चाहिए:
Id Name Address City State Active Email Date
1 Acme1 1234 Abc Road Springfield OR 1 [email protected] 3/1/2011
सूचना सक्रिय मान 1 है, और नहीं 0 क्योंकि पंक्ति क्रमांक 3 सबसे हाल ही में तारीख थी।
पीएस साथ ही, क्या यह स्पष्ट रूप से परिभाषित/जानने के बिना ऐसा करने का कोई तरीका है कि सभी कॉलम नाम क्या हैं? जिन वास्तविक तालिका के साथ मैं काम कर रहा हूं उनमें कॉलम का एक टन है, जिसमें हर समय नए जोड़े जा रहे हैं। क्या तालिका में सभी कॉलम नाम देखने का कोई तरीका है, और उसके बाद उस सबक्वायरी या नौकरी करने के लिए मोहक उपयोग करें?
क्या ईमेल भी [email protected] होना चाहिए, या Acme2 विलय के लिए सीमाओं से बाहर माना जाता है? –
आप डेटा के समूह की पहचान कैसे करते हैं? मुझे लगता है कि आप डेटा के दोहरे विलय करना चाहते हैं। तो आप अपनी तालिका में हजारों या अधिक रिकॉर्ड में डेटा के समूह की पहचान कैसे करते हैं? यदि आप जानते हैं कि आप इसे संग्रहीत प्रक्रिया को लिख सकते हैं। यदि आवश्यक हो तो मैं उत्तर के रूप में नमूना एसपी लिख सकता हूं – YvesR
हाय रसेल फॉक्स, नहीं, ईमेल [email protected] रहना चाहिए क्योंकि यह पहले से ही पंक्ति आईडी 1 में मौजूद था। आईडी 1 में केवल शून्य मूल्य कॉलम को संशोधित किया जाना चाहिए। – noahC