fx Power Query Basics
ENहिन्दी

Merge (joins) बनाम Append — VLOOKUP का scalable रूप

⏱ 13 min

आप क्या सीखेंगे

  • एक तस्वीर में Merge बनाम Append
  • Merge: sales में products
  • Join kinds

समझिए

1. एक तस्वीर में Merge बनाम Append

Merge Append
दिशा कॉलम जोड़ता है (अगल-बगल) रो जोड़ता है (ऊपर-नीचे)
किसकी तरह XLOOKUP / VLOOKUP एक टेबल को दूसरी के नीचे कॉपी-पेस्ट
चाहिए मेल खाता key कॉलम एक जैसे कॉलम नाम
उदाहरण Sales में Product और Category लाना Sales 2024-25 + Sales 2025-26

2. Merge: sales में products

products.csv को अलग query (Products) के रूप में लोड करें। Sales query में:

Home → Merge Queries → दूसरी टेबल Products → दोनों में ProductID पर क्लिक → Join Kind Left Outer → OK।

= Table.NestedJoin(#"Added Revenue", {"ProductID"}, Products, {"ProductID"}, "Products", JoinKind.LeftOuter)

हर सेल में Table वाला नया कॉलम दिखता है। उसके expand आइकन ⇄ पर क्लिक → Product, Category, UnitCost टिक → "Use original column name as prefix" हटाएँ:

= Table.ExpandTableColumn(#"Merged Queries", "Products", {"Product", "Category", "UnitCost"}, {"Product", "Category", "UnitCost"})

50,000 रो पर XLOOKUP से तुलना: भरने को फ़ॉर्मूले नहीं, recalculation की देरी नहीं, और refresh पर अपने आप दोहराया जाता है।

कई कॉलम पर merge (जैसे टारगेट के लिए Region + Month): हर टेबल में दोनों कॉलम एक ही क्रम में Ctrl + क्लिक करें।

3. Join kinds

Join kind क्या रखता है किसके लिए
Left Outer पहली टेबल की सारी रो + मेल सामान्य lookup (सबसे आम)
Right Outer दूसरी टेबल की सारी रो + मेल कम ही
Full Outer दोनों का सब कुछ मिलान (reconciliation)
Inner सिर्फ़ दोनों में मिली रो सिर्फ़ सही रिकॉर्ड रखना
Left Anti पहली टेबल की वे रो जिनका कोई मेल नहीं अनजान ProductID वाली बिक्री ढूँढना
Right Anti दूसरी टेबल की बिना मेल वाली रो कभी न बिके प्रोडक्ट ढूँढना

Left Anti एक सुपरपावर है: Sales की कॉपी को Products से Left Anti merge = गलत प्रोडक्ट कोड वाले ऑर्डर की लिस्ट — तुरंत डेटा-क्वालिटी जाँच। Capstone डेटा पर trim करने से पहले StoreID पर Left Anti "S01 " जैसे स्पेस वाली ~1,000 रो दिखाता है; trim के बाद शून्य।

4. Keys बिल्कुल मेल खानी चाहिए

  • दोनों कॉलम का डेटा टाइप एक (टेक्स्ट "101" ≠ नंबर 101)।
  • स्पेस trim करें; Power Query merge case-sensitive हैं ("s01" ≠ "S01") — ज़रूरत हो तो दोनों पर Format → Uppercase।
  • Lookup टेबल में keys unique हों, वरना रो बढ़ जाती हैं (एक बिक्री × दो मेल खाते प्रोडक्ट = दो रो)। key पर Remove Duplicates या Group By count से जाँचें।

5. Fuzzy matching

Merge डायलॉग → Use fuzzy matching (Similarity threshold 0.8 आदि) "Karol Bagh" को "Karolbagh" से मिलाता है। गड़बड़ नामों के लिए काम का; नतीजे जाँचें — पैसों के मामले में बिना जाँचे fuzzy मेल पर भरोसा न करें।

6. Append

Home → Append Queries (या "Append as New") → टेबल चुनें:

= Table.Combine({Sales_FY2024_25, Sales_FY2025_26})

कॉलम नाम से मिलाए जाते हैं। किसी टेबल में न होने वाला कॉलम null से भरता है; नाम बदला कॉलम ("Amt" बनाम "Amount") दो आधे-खाली कॉलम बन जाता है — पहले rename करें।

From Folder इम्पोर्ट (लेसन 2) हर फ़ाइल का अपने आप होने वाला append है।

7. स्पीड के टिप्स

फ़िल्टर और कॉलम हटाने के बाद merge करें (मिलाने को कम रो/कॉलम)। Lookup टेबल छोटी और साफ़ रखें। कई टेबल से कई lookups के लिए हर चीज़ को एक चौड़ी टेबल में merge करने से अक्सर मॉड्यूल 4 के Data Model relationships बेहतर हैं।

आम गलतियाँ

टेक्स्ट बनाम नंबर keys (कोई मेल नहीं, सब null)। Lookup टेबल में डुप्लिकेट keys (रो बढ़ जाती हैं — merge से पहले/बाद हमेशा रो गिनें)। अलग कॉलम नाम वाली टेबल append करना।

अभ्यास

mediumCapstone में: Sales query में Stores (StoreName, City, Region) और Products (Product, Category, UnitCost) को Left Outer से merge करें; पक्का करें कि रो 50,000 ही रहें। फिर Left Anti जाँच query बनाएँ जो अनजान StoreID वाली बिक्री दिखाए — trim के बाद 0 रो आनी चाहिए।
Trim किए StoreID/ProductID पर Left Outer joins करें; expand से पहले dimension keys unique हों। दोनों merges के बाद 50000 rows; दोनों keys के Left Anti checks zero हों। बढ़ी row count duplicate dimension keys बताती है। Append rows जोड़ता है, attributes join नहीं करता।

प्रश्नोत्तरी

Merge कॉलम जोड़ता है या रो?
कॉलम
बिना मेल वाले रिकॉर्ड ढूँढने का join kind?
Left Anti
Merge के बाद रो बढ़ गईं — क्यों?
Lookup टेबल में डुप्लिकेट keys
Merge (joins) बनाम Append — VLOOKUP का scalable रूप · हिंदी | ExcelWalaa