मुख्य सामग्री पर जाएं

SQL में Python/R कैसे निष्पादित करें

इस ट्यूटोरियल के बाद, आप जानेंगे कि T-SQL स्टेटमेंट्स में R और Python स्क्रिप्ट्स कैसे एम्बेड करें और SQL व Python/R के बीच डेटा पास करने के लिए कौन-से डेटा टाइप्स उपयोग होते हैं।
अपडेट किया गया 25 सित॰ 2026  · 6 मि॰ पढ़ें

AI के साथ खोजें

ChatGPTClaudePerplexity

जहाँ डेटा रहता है वहाँ बुद्धिमत्ता लाना

परिचय

क्या आप जानते हैं कि आप अपने T-SQL स्टेटमेंट्स के भीतर R और Python कोड लिख सकते हैं? SQL Server में Machine Learning Services डेटा को इधर-उधर ले जाने की ज़रूरत खत्म कर देता है। बड़े और संवेदनशील डेटा को नेटवर्क पर ट्रांसफर करने या सैंपल csv फ़ाइलों के साथ सटीकता खोने के बजाय, आप अपना R/Python कोड अपने डेटाबेस के भीतर ही निष्पादित करा सकते हैं। SQL स्टोर्ड प्रोसिजर्स के साथ अपना R/Python कोड आसानी से डिप्लॉय करें, जिससे वे आपके ETL प्रॉसेसेज़ या किसी भी एप्लिकेशन में सुलभ हो सकें। अपने डेटाबेस में मशीन लर्निंग मॉडल्स को प्रशिक्षित करें और सहेजें—अपने डेटा जहाँ रहता है वहीं बुद्धिमत्ता लाएँ।

आप SQL Server में बड़े डेटा पर Deep Learning और AI एप्लिकेशन बनाने के लिए नवीनतम ओपन सोर्स R/Python पैकेजेज़ इंस्टॉल और रन कर सकते हैं। Microsoft के आधुनिक, हाई-परफॉर्मेंस एल्गोरिद्म्स RevoScaleR और RevoScalePy APIs में भी उपलब्ध हैं। इन्हें ओपन सोर्स दुनिया के ताज़ा नवाचारों के साथ उपयोग करने से आप अपने एप्लिकेशन में बेजोड़ चयन, परफॉर्मेंस और स्केल ला सकते हैं।

SQL Server के साथ इन-डेटाबेस एनालिटिक्स क्यों

यदि आप SQL Server Machine Learning Services आज़माने को उत्सुक हैं, तो नीचे दिया गया हैंड्स-ऑन ट्यूटोरियल देखें। यदि आपके SQL Server में Machine Learning Services इंस्टॉल नहीं है, तो पहले यहाँ प्रकाशित गेटिंग स्टार्टेड ट्यूटोरियल का पालन करें: https://blogs.msdn.microsoft.com/mlserver/2018/05/18/getting-started-with-machine-learning-services-in-sql-server/

हाउ-टू ट्यूटोरियल

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

यह ट्यूटोरियल बताएगा कि T-SQL स्टेटमेंट्स में R और Python कैसे निष्पादित करें। ट्यूटोरियल पूरा करने के बाद, आप जानेंगे:

  1. T-SQL स्टेटमेंट्स में R और Python स्क्रिप्ट्स कैसे एम्बेड करें।
  2. R/Python स्क्रिप्ट्स को इनपुट और आउटपुट डेटा बताने के लिए बेसिक पैरामीटर्स कैसे उपयोग करें।
  3. SQL और Python/R प्रॉसेसेज़ के बीच डेटा पास करने के लिए कौन-से डेटा टाइप्स इस्तेमाल होते हैं।

सेटअप आवश्यकताएँ

यदि आपके SQL Server पर Machine Learning Services इंस्टॉल नहीं है, तो सेटअप करने के लिए पहले यह गेटिंग स्टार्टेड ट्यूटोरियल पढ़ें या ये वीडियो देखें: https://aka.ms/InstallMLServices https://aka.ms/EnableMLServices

वीडियो साथी

यदि आपको वीडियो के ज़रिए सीखना पसंद है, तो यह ट्यूटोरियल YouTube पर भी उपलब्ध है: @https://aka.ms/ExecuteMLServices https://youtu.be/ACejZ9optCQ

बेसिक्स

SQL Server Management Studio खोलें और अपने सर्वर से कनेक्शन बनाएँ। एक नया क्वेरी खोलें और यह बुनियादी उदाहरण पेस्ट करें: (इन सैंपल्स में Python प्रयोग किया गया है, पर आप R के साथ भी सब कुछ कर सकते हैं)

EXEC sp_execute_external_script @language = N'Python',
@script = N'print(3+4)'

Sp_execute_external_script एक विशेष सिस्टम स्टोर्ड प्रोसिजर है जो SQL Server में R और Python निष्पादन सक्षम करता है। इसमें language पैरामीटर होता है जो Python और R में चयन करने देता है। एक script पैरामीटर है जहाँ आप R या Python कोड पेस्ट कर सकते हैं। यदि आपको आउटपुट में 7 प्रिंट होता नहीं दिखता, तो इस लेख में सेटअप स्टेप्स फिर से देखें।

पैरामीटर का परिचय

एक बेसिक उदाहरण पर चर्चा के बाद, आइए और हिस्से जोड़ना शुरू करें:

EXEC sp_execute_external_script @language =N'Python',
@script = N'
OutputDataSet = InputDataSet;
',
@input_data_1 =N'SELECT 1 AS Col1';

Machine Learning Services एक इनपुट डेटा पैरामीटर के साथ SQL और R/Python के बीच अधिक स्वाभाविक कम्युनिकेशन देता है, जो किसी भी SQL क्वेरी को स्वीकार करता है। इनपुट पैरामीटर का नाम input_data_1 है।

आप Python कोड में देख सकते हैं कि Python और SQL के बीच डेटा पास करने के लिए डिफ़ॉल्ट वेरिएबल्स परिभाषित हैं। डिफ़ॉल्ट वेरिएबल नाम OutputDataSet और InputDataSet हैं। आप इन डिफ़ॉल्ट नामों को इस उदाहरण की तरह बदल सकते हैं:

EXEC sp_execute_external_script @language =N'Python',
@script = N'
MyOutput = MyInput;
',
@input_data_1_name = N'MyInput',
@input_data_1 =N'SELECT 1 AS foo',
@output_data_1_name =N'MyOutput';

जब आपने ये उदाहरण चलाए, तो आपने नोटिस किया होगा कि हर एक एक परिणाम लौटाता है जिसमें (No column name) दिखता है? आप स्टेटमेंट के अंत में WITH RESULT SETS क्लॉज़ जोड़कर लौटाए गए कॉलम्स के नाम बता सकते हैं—जो कॉलम्स और उनके डेटा टाइप्स की कॉमा-सेपरेटेड सूची होती है।

EXEC sp_execute_external_script  @language =N'Python',
@script=N'
MyOutput = MyInput;
',
@input_data_1_name = N'MyInput',
@input_data_1 =N'SELECT 1 AS foo,2 AS bar',
@output_data_1_name =N'MyOutput'
WITH RESULT SETS ((MyColName int, MyColName2 int));

इनपुट/आउटपुट डेटा टाइप्स

अच्छा, अब SQL और Python के बीच इस्तेमाल होने वाले इनपुट/आउटपुट डेटा टाइप्स पर थोड़ा और चर्चा करें। आपका इनपुट SQL SELECT स्टेटमेंट Python को एक "DataFrame" पास करता है, जो Python Pandas पैकेज पर निर्भर करता है। Python से SQL में आपका आउटपुट भी Pandas DataFrame ऑब्जेक्ट होना चाहिए। यदि आपको स्केलर वैल्यूज़ को DataFrame में बदलना है, तो यह उदाहरण देखें:

EXEC sp_execute_external_script @language =N'Python',
@script=N'
import pandas as pd
c = 1/2
d = 1*2
s = pd.Series([c,d])
df = pd.DataFrame(s)
OutputDataSet = df
'

वेरिएबल्स c और d दोनों स्केलर वैल्यूज़ हैं, जिन्हें आप चाहें तो pandas Series में जोड़ सकते हैं, और फिर उन्हें pandas DataFrame में बदल सकते हैं। यह एक थोड़ा अधिक जटिल उदाहरण दिखाता है; अधिक विवरण और उदाहरणों के लिए Python की pandas पैकेज डॉक्युमेंटेशन पढ़ें:

EXEC sp_execute_external_script @language =N'Python',
@script=N'
import pandas as pd
s = {"col1": [1, 2], "col2": [3, 4]}
df = pd.DataFrame(s)
OutputDataSet = df
'

अब आप जानते हैं कि T-SQL में R और Python कैसे निष्पादित करें — इसकी बुनियाद बहुत सरल है: EXEC sp_execute_external_script कॉल करें, अपना R या Python कोड कॉपी/पेस्ट करें, और अपना SQL इनपुट SELECT कॉपी/पेस्ट करें। हो सकता है आपको कोई डेटा ट्रांसफॉर्मेशन या एक्स्ट्रैक्शन करना हो जो R/Python में सरल है लेकिन SQL में लिखना बहुत जटिल है। हो सकता है आप इतने बड़े डेटा पर डीप न्यूरल नेटवर्क ट्रेन कर रहे हों जिसे नेटवर्क पर भेजना संभव न हो। या शायद आप अपने OLTP सिस्टम में आने वाले नए डेटा पर स्वतः स्कोर/प्रेडिक्शन करना चाहते हों। उपयोग के मामले व्यापक हैं, और अब आप SQL Server में Machine Learning Services के साथ सुरक्षा, परफॉर्मेंस और स्केल बढ़ाने के लिए तैयार हैं।

आगे पढ़ें

क्या आप जानते हैं कि आप अपना R और Python कोड अपने पसंदीदा IDE जैसे RStudio और Jupyter Notebooks में भी लिख सकते हैं और फिर उस कोड का निष्पादन रिमोटली SQL Server को भेज सकते हैं? अधिक जानने के लिए ये डॉक्युमेंटेशन लिंक देखें: Documentation: https://aka.ms/R-RemoteSQLExecution Documentation: https://aka.ms/R-RemoteSQLExecution Github Jupyter Notebook उदाहरण: https://aka.ms/RemoteExecJupyter

यदि आप SQL के बारे में और सीखना चाहें, तो हमारा Intro to SQL for Data Science कोर्स और हमारा हाउ टू लर्न SQL हब देखें।

विषय
SQL
डेटा साइंस
Python
R

SQL के बारे में और जानें

कोर्स

SQL में Data Manipulation

4 घंटा
336.8K
जटिल SQL क्वेरियों में महारत हासिल करें, डेटा विज्ञान के विविध प्रश्नों के उत्तर दें और PostgreSQL में विश्लेषण के लिए मजबूत डेटा सेट तैयार करें।
विवरण देखेंRight Arrow
पाठ्यक्रम शुरू करें
और देखेंRight Arrow