sql.moscowक्वेरी · रिपोर्ट · माइग्रेशन
sql.moscow / विकास और अनुकूलनPostgreSQL · Greenplum · Oracle

जटिल SQL.
स्पष्ट परिणाम।

SQL क्वेरी, त्रुटियों, रिपोर्ट, डेटा एक्सपोर्ट, PostgreSQL, Greenplum, Oracle PL/SQL और डेटाबेस प्रबंधन प्रणालियों के बीच SQL तर्क के माइग्रेशन में सहायता।

query.sqlक्वेरी का उदाहरण
SELECT department,
       COUNT(*) AS total
FROM requests
WHERE created_at >=
      CURRENT_DATE - INTERVAL '30 days'
GROUP BY department;
समझाने के लिए उदाहरण · वास्तविक डेटा के बिना
काम शुरू होने से पहले

हम कार्य और दोहराए जा सकने वाले उदाहरण से शुरुआत करते हैं।

क्वेरी, त्रुटि का पाठ, डेटाबेस प्रबंधन प्रणाली का संस्करण और पहचान संबंधी जानकारी हटाकर तैयार किया गया उदाहरण भेजें। पासवर्ड, एक्सेस कुंजियाँ और वास्तविक व्यक्तिगत डेटा आवश्यक नहीं हैं।

कार्य कैसे भेजें ↗
सेवाएँ

कौन सी सेवाएँ ली जा सकती हैं

सेवा

SQL क्वेरी में सुधार

सिंटैक्स, डेटा प्रकार, JOIN, GROUP BY, CTE, विंडो फ़ंक्शन की त्रुटियाँ, दोहराई गई पंक्तियाँ, गलत योग और खाली परिणाम।

5 000 ₽ से
सेवा

क्वेरी का अनुकूलन

धीमी डेटा क्वेरी का विश्लेषण, JOIN और सबक्वेरी को फिर से लिखना, इंडेक्स और निष्पादन योजना पर सुझाव।

15 000 ₽ से
सेवा

PostgreSQL / Greenplum

PL/pgSQL, फ़ंक्शन, अस्थायी टेबल, विश्लेषणात्मक क्वेरी, Greenplum की विशिष्टताएँ, डेटा प्रकार और परिणाम की संरचना संबंधी त्रुटियाँ।

15 000 ₽ से
सेवा

Oracle PL/SQL → PostgreSQL

SQL तर्क, फ़ंक्शन और प्रोसीजर का रूपांतरण: DECODE, NVL, तारीखें, MERGE, कर्सर, पैकेज, PL/pgSQL.

25 000 ₽ से
सेवा

रिपोर्ट और डेटा एक्सपोर्ट

Excel, BI, CRM, ERP, बिक्री, स्टॉक, ग्राहकों, भुगतानों, दस्तावेज़ों और डेटा के मिलान के लिए SQL क्वेरी।

10 000 ₽ से
सेवा

SQL कोड की समीक्षा

दूसरों के SQL का विश्लेषण, त्रुटियाँ खोजना, तर्क सरल करना, टिप्पणियाँ, दस्तावेज़ीकरण और क्वेरी को फिर से लिखना।

20 000 ₽ से
SQL त्रुटियाँ

क्वेरी में सुधार और त्रुटियों का विश्लेषण

आप क्वेरी का पाठ, त्रुटि, टेबल का विवरण और अपेक्षित परिणाम भेज सकते हैं। डेटाबेस तक पहुँच हमेशा अनिवार्य नहीं होती।

  • relation does not exist
    स्कीमा, टेबल के नाम, बड़े और छोटे अक्षरों, search_path और निष्पादन संदर्भ की जाँच।
  • column does not exist
    एलियस, JOIN, CTE, नेस्टेड क्वेरी और स्कोप की जाँच।
  • structure of query does not match
    PostgreSQL फ़ंक्शन में लौटाए जाने वाले डेटा प्रकारों और कॉलम के क्रम में सुधार।
  • syntax error at or near
    सिंटैक्स की त्रुटियाँ, डेटाबेस प्रबंधन प्रणालियों की असंगतियाँ और गलत संरचनाएँ खोजना।
  • दोहराई गई पंक्तियाँ और गलत योग
    JOIN, ग्रुपिंग, एग्रीगेशन और डेटा के विवरण स्तर की जाँच।
  • धीमी क्वेरी
    तर्क, अनावश्यक सबक्वेरी, फ़िल्टर, इंडेक्स और निष्पादन योजना का विश्लेषण।
माइग्रेशन

Oracle PL/SQL → PostgreSQL / Greenplum

SQL तर्क के माइग्रेशन के लिए केवल शब्द बदलना पर्याप्त नहीं है; फ़ंक्शन, डेटा प्रकार, तारीखों, प्रक्रियात्मक तर्क और डेटाबेस प्रबंधन प्रणाली के व्यवहार के अनुसार अनुकूलन आवश्यक है।

Oracle में अक्सर

  • DECODE
  • NVL
  • MERGE
  • CONNECT BY
  • PL/SQL पैकेज
  • कर्सर आधारित तर्क

अनुकूलन

  • CASE
  • COALESCE
  • INSERT ON CONFLICT / अलग तर्क
  • WITH RECURSIVE
  • PL/pgSQL फ़ंक्शन
  • set-based तरीका
Greenplum: में माइग्रेशन करते समय डेटा के वितरण, UPDATE/DELETE संबंधी पाबंदियों, अस्थायी टेबल, फ़ंक्शन और MPP आर्किटेक्चर की विशेषताओं को ध्यान में रखना आवश्यक है।
रिपोर्ट

विश्लेषण और व्यवसाय के लिए SQL डेटा एक्सपोर्ट

बिक्री, ग्राहकों, स्टॉक, भुगतानों, दस्तावेज़ों, उत्पादों, समूहों, अवधियों और स्थितियों के अनुसार डेटा एक्सपोर्ट करने के लिए क्वेरी तैयार करना।

  • Excel / CSV
    आवश्यक एक्सपोर्ट संरचना के अनुसार क्वेरी।
  • Power BI / BI
    डेटासेट और विश्लेषणात्मक डेटा मार्ट तैयार करना।
  • CRM / ERP
    ग्राहकों, दस्तावेज़ों, सौदों और भुगतानों के अनुसार डेटा क्वेरी।
  • डेटा का मिलान
    दोहराव, विसंगतियाँ, छूटे हुए डेटा और एग्रीगेशन की त्रुटियाँ खोजना।
शुल्क विवरण

SQL कार्यों की कीमतें

कार्य का प्रारंभिक विश्लेषण3 000 ₽ से
सरल SQL क्वेरी में सुधार5 000 ₽ से
SQL डेटा एक्सपोर्ट का विकास10 000 ₽ से
धीमी क्वेरी का अनुकूलन15 000 ₽ से
PL/pgSQL फ़ंक्शन20 000 ₽ से
Oracle PL/SQL → PostgreSQL माइग्रेशन25 000 ₽ से
SQL कोड की समीक्षा20 000 ₽ से
तत्काल कार्यअलग से तय किया जाएगा

अंतिम कीमत डेटाबेस प्रबंधन प्रणाली, कोड की मात्रा, टेबल स्कीमा की उपलब्धता, तात्कालिकता, परीक्षण की आवश्यकता और व्यावसायिक तर्क की जटिलता पर निर्भर करती है।

काम कैसे होता है

कार्य पूरा करने की प्रक्रिया

1. आप कार्य भेजते हैं

क्वेरी, त्रुटि, डेटाबेस प्रबंधन प्रणाली, टेबल की संरचना, अपेक्षित परिणाम और पाबंदियाँ।

2. तर्क स्पष्ट किया जाता है

कौन सा डेटा चाहिए, परिणाम की गणना कैसे होती है, त्रुटि या धीमापन कहाँ आता है।

3. समाधान तैयार किया जाता है

सुधारा गया SQL, स्पष्टीकरण, सुझाव और आवश्यकता होने पर अनुकूलन के विकल्प।

FAQ

सामान्य प्रश्न

क्या डेटाबेस तक पहुँच के बिना सहायता मिल सकती है?

हाँ, प्रारंभिक विश्लेषण के लिए अक्सर क्वेरी का पाठ, त्रुटि, टेबल की संरचना और अपेक्षित परिणाम पर्याप्त होते हैं। अनुकूलन के लिए निष्पादन योजना और डेटा की मात्रा का उदाहरण होना उपयोगी है।

क्या Oracle SQL को PostgreSQL के लिए फिर से लिखा जा सकता है?

हाँ। फ़ंक्शन, डेटा प्रकार, तारीखों, प्रक्रियात्मक तर्क और सिंटैक्स के अंतर ध्यान में रखने होंगे। कभी-कभी सीधे प्रतिस्थापन के बजाय तरीका बदलना आवश्यक होता है।

क्या क्वेरी को तेज़ किया जा सकता है?

हाँ, यदि क्वेरी का पाठ, टेबल की संरचना, डेटा की मात्रा का उदाहरण और संभव हो तो EXPLAIN / EXPLAIN ANALYZE उपलब्ध हों। इंडेक्स और तर्क को फिर से लिखने पर भी सुझाव दिए जा सकते हैं।

क्या Excel या BI के लिए डेटा एक्सपोर्ट बनाया जा सकता है?

हाँ। आवश्यक फ़ील्ड, फ़िल्टर, ग्रुपिंग, अवधि और परिणाम के प्रारूप के अनुसार SQL क्वेरी तैयार की जा सकती है।

सुधारी गई क्वेरी की जाँच और प्रदर्शन की तुलना कैसे करें

SQL बदलने से पहले यह दर्ज करना उपयोगी है कि कौन सा परिणाम सही माना जाएगा: कॉलम का समूह, चयन के नियम, विवरण का स्तर, स्वीकार्य दोहराव और योग की गणना का तरीका। जाँच के उदाहरण में एक छोटा स्कीमा, ऐसे रिकॉर्ड जिनसे पहचान संबंधी जानकारी हटा दी गई हो और अपेक्षित उत्तर शामिल होते हैं। ऐसा जाँच सेट सिंटैक्स की त्रुटि और रिपोर्ट की गलत समझ के बीच अंतर करने में मदद करता है।

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

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

PostgreSQL में EXPLAIN ANALYZE मोड वास्तव में जाँची जा रही क्वेरी को चलाता है। इसलिए डेटा बदलने वाले ऑपरेशन और भारी डेटा क्वेरी पर इसका उपयोग पहले से सहमत किया जाता है; तैयार परीक्षण प्रति का उपयोग बेहतर है। वास्तविक डेटा के बिना केवल योजना प्रारंभिक विश्लेषण के लिए उपयोगी है, लेकिन वह वास्तविक कार्य परिदृश्य में प्राप्त परिणाम की जाँच का विकल्प नहीं है।

डेटाबेस प्रबंधन प्रणालियों के बीच SQL तर्क माइग्रेट करते समय क्या जाँचें

रिपोर्ट या प्रोसीजर के माइग्रेशन का आकलन सहमत डेटा पर उसके व्यवहार से किया जाता है। सफलतापूर्वक चलने के अलावा अनुपस्थित मानों, डेटा प्रकार के रूपांतरण, राउंडिंग, तारीखों और समय सीमाओं के व्यवहार की जाँच होती है। देखने में मिलती-जुलती क्वेरी में भी JOIN की शर्त या फ़िल्टर का छोटा बदलाव अंतिम योग बदल सकता है।

माइग्रेशन के लिए जाँच सेट

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

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

माइग्रेशन के बाद SQL स्क्रिप्ट, बदलावों की सूची और जाँच परिणाम सहेजना उपयोगी है। अनसुलझी निर्भरताएँ स्पष्ट रूप से लिखी जाती हैं: उदाहरण के लिए, कॉल किया जाने वाला फ़ंक्शन उपलब्ध नहीं कराया गया है या किसी फ़ील्ड को भरने का नियम अज्ञात है। ऐसी सूची से किसी विशिष्ट प्रश्न से काम आगे बढ़ाना और अनावश्यक वास्तविक कार्य डेटा व पहुँच दिए बिना आगे की जाँच पर सहमति बनाना संभव होता है।

अनुरोध

विश्लेषण के लिए SQL कार्य भेजें

क्वेरी का पाठ, त्रुटि, टेबल की संरचना, डेटाबेस प्रबंधन प्रणाली और अपेक्षित परिणाम संलग्न करें। डेटाबेस तक पहुँच के बिना भी कोड और विवरण से शुरुआत की जा सकती है।

  • SQL क्वेरी में सुधार;
  • धीमी रिपोर्ट का अनुकूलन;
  • Oracle PL/SQL का माइग्रेशन;
  • Excel, BI, CRM या ERP के लिए डेटा एक्सपोर्ट।
SQL, PostgreSQL, Greenplum, Oracle PL/SQL, रिपोर्ट और डेटा एक्सपोर्टrequest@sql.moscow
लिखेंकार्य पर चर्चा करें ↗