Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एमएस एक्सेल - स्थानीय टेबल (शीट) के साथ बाहरी (एसक्यूएल) डेटा में शामिल हों

ऊपर दी गई मेरी टिप्पणी का उद्देश्य केवल कुछ संभावनाओं को खोलना था जो आपके हाथ में हो सकती हैं।

PowerQuery Office 2013 के लिए एक निःशुल्क प्लग-इन है। Office 2016 में यह एक्सेल का हिस्सा है और अब प्लग-इन नहीं है।

वैसे भी, आप अपने एसक्यूएल पर एक अस्थायी तालिका या तालिका चर का उपयोग करने के दृष्टिकोण को पसंद करते हैं। इसलिए, मैं इस दृष्टिकोण के बारे में थोड़ा और विस्तार से बताऊंगा:

अंत में आप इस तरह की एक क्वेरी चाहते हैं:

set nocount on;
declare @tblVAT table
    (
     Country nvarchar(50),
     VAT decimal(9, 7)
    );

insert  into @tblVAT
        (Country, VAT)
values  (N'Germany', 0.19),
        (N'Frence', 0.20),
        (N'Spain', 0.21);


select  tc.Name,
        tc.ID,
        case when tc.Country is null then tv.Country
             else tc.Country
        end as Country,
        tv.VAT
from    dbo.tblCustomers as tc
full outer join @tblVAT as tv
on      tv.Country = tc.Country;

<उप> set nocount on; उपरोक्त SQL क्वेरी की शुरुआत में। इसके बिना यह काम नहीं करेगा!

एक बार, आपके पास यह प्रश्न है, तो आप इसे मेनू Data . का उपयोग करके आसानी से एक्सेल में पेस्ट कर सकते हैं ► Get External DataFrom SQL Server . पहले चरण में आपको ग्राहक तालिका मिलेगी और फिर दूसरे चरण में ऊपर वर्णित तालिका चर को शामिल करने के लिए क्वेरी को परिष्कृत करें। यहाँ एक संक्षिप्त दृश्य सारांश दिया गया है:

मुझे लगता है, इस समय केवल शेष प्रश्न हैं:

  1. आप उपरोक्त SQL कथन को गतिशील रूप से कैसे बनाते हैं और
  2. आप उपरोक्त तालिका को Excel में कैसे प्राप्त करते हैं और फिर इस अद्यतन SQL कथन के साथ अद्यतन किया जाता है।

उपरोक्त एसक्यूएल को गतिशील रूप से बनाने के लिए आप निम्न पर एक नज़र डालना चाहेंगे:एक्सेल वीबीए में एसक्यूएल में क्लॉज के रूप में एक सरणी या शब्दकोश का उपयोग करना

कल ही मैंने इसी तरह के एक प्रश्न का उत्तर दिया था जहाँ एक उपयोगकर्ता एक एक्सेल शीट की सामग्री को एक SQL सर्वर के लिए गतिशील रूप से बनाई गई तालिका के रूप में पास करना चाहता था। आप अपने उद्देश्य के लिए आसानी से अनुकूलित कर सकते हैं (या यहां तक ​​कि इसका उपयोग भी कर सकते हैं)।

अंतिम चरण के लिए (इस तालिका को इस नई SQL क्वेरी के साथ एक्सेल में अपडेट करें) आप मैक्रो रिकॉर्डर का उपयोग कर सकते हैं और वही कर सकते हैं जो मैंने उपरोक्त स्क्रीनशॉट में किया था। स्वचालित रूप से बनाया गया कोड मेरे द्वारा आपको प्रस्तावित किए जाने वाले कोड से अधिक / कम कुछ नहीं है।

इसलिए यह अब आपके पास है। मुझे बताएं कि क्या मैं पर्याप्त रूप से स्पष्ट नहीं था या यदि आपको इस समाधान को समझने के लिए और विवरण की आवश्यकता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में संग्रहीत प्रक्रिया में पास किए गए VARCHAR को कैसे पार्स करें?

  2. SQL सर्वर मेमोरी-ऑप्टिमाइज़्ड टेबल्स में इंडेक्स का उपयोग करना

  3. एक टेबल में कितने क्लस्टर इंडेक्स हो सकते हैं?

  4. SQL सर्वर भूगोल डेटाटाइप लाइन पर निकटतम बिंदु

  5. SQL सर्वर में डेटा प्रकार की आईडी प्राप्त करने के लिए TYPE_ID() का उपयोग करें