◯ मुफ़्त: 5 उपयोग/दिन • रीसेट होगा 15h 15m
विकास & तकनीकी

SQL क्वेरी जेनरेटर

जो चाहिए उसे साधारण अंग्रेज़ी में वर्णन करें और PostgreSQL, MySQL, SQLite, SQL Server, BigQuery या Snowflake के लिए सही, पठनीय SQL क्वेरी प्राप्त करें — आपके स्कीमा का सम्मान करते हुए, प्रत्येक क्लॉज़ की व्याख्या और इंडेक्स व प्रदर्शन पर नोट्स के साथ।

और जानें

SQL क्वेरी जेनरेटर एक प्रश्न — '2025 के लिए प्रत्येक देश में मासिक राजस्व, केवल वे ग्राहक जिनके पास तीन से अधिक ऑर्डर हैं' — को उस डेटाबेस के लिए लिखी गई क्वेरी में बदल देता है जिसे आप चलाते हैं: PostgreSQL, MySQL और MariaDB, SQLite, SQL Server, BigQuery या Snowflake। अपने टेबल और कॉलम पेस्ट करें और क्वेरी ठीक वही नाम उपयोग करती है; यदि स्कीमा खाली छोड़ें तो यह अपने किए गए अनुमान बताता है। आप शैली चुनते हैं (पठनीय CTEs, कॉम्पैक्ट, या विंडो फ़ंक्शन्स के साथ एनालिटिकल) और कितनी व्याख्या चाहिए, और प्रत्येक उत्तर परिणाम की संरचना और तेज़ी के लिए आवश्यक इंडेक्स के साथ समाप्त होता है। यह तब तक विनाशकारी स्टेटमेंट नहीं लिखता जब तक आप विशेष रूप से न मांगें।

0 / 4000
0 / 10000

✓ मुफ़्त उपयोग — बिना साइनअप, बिना क्रेडिट कार्ड।

सभी के लिए

प्रत्येक देश में मासिक राजस्व, केवल सक्रिय ग्राहक

HAVING-शैली ग्राहक फ़िल्टर के साथ एक वित्तीय रिपोर्ट

इनपुट और आउटपुट का पूर्वावलोकन देखें

इनपुट

क्वेरी को क्या लौटाना चाहिए?
Monthly revenue per country for 2025, counting only customers who placed more than 3 orders in 2025. Sort by month, then revenue descending.
टेबल और कॉलम (वैकल्पिक)
orders(id, customer_id, total_cents integer, created_at timestamp) customers(id, country text, signup_at timestamp)
SQL डायलैक्ट
PostgreSQL
क्वेरी शैली
पठनीय (CTEs, प्रत्येक क्लॉज़ नई पंक्ति में)
व्याख्या
संक्षिप्त

आउटपुट (अंश)

```sql
WITH active_customers AS (
  SELECT o.customer_id
  FROM orders AS o
  WHERE o.created_at >= DATE '2025-01-01'
    AND o.created_at <  DATE '2026-01-01'
  GROUP BY o.customer_id
  HAVING COUNT(*) > 3
)
SELECT
  DATE_TRUNC('month', o.created_at)::date AS month,
  c.country,
  SUM(o.total_cents) / 100.0            AS revenue
FROM orders AS o
JOIN active_customers AS a ON a.customer_id = o.customer_id
JOIN customers        AS c ON c.id = o.customer_id
WHERE o.created_at >= DATE '2025-01-01'
  AND o.created_at <  DATE '2026-01-01'
GROUP BY 1, 2
ORDER BY month, revenue DESC;
```

**स्कीमा जैसा दिया गया है।**

CTE 2025 में तीन से अधिक ऑर्डर वाले ग्राहकों को खोजता है; मुख्य क्वेरी केवल उनके ऑर्डर रखती है, प्रत्येक ऑर्डर को उसके महीने में ट्रंकेट करती है और महीने व देश के अनुसार राजस्व का योग करती है। डेट रेंज आधा-खुला है इसलिए 31 दिसंबर को एक बार ही गिना जाता है…
डेवलपर

प्रत्येक ग्राहक का नवीनतम ऑर्डर

कोरिलेटेड सबक्वेरी को बदलने वाला विंडो-फ़ंक्शन क्वेरी

इनपुट और आउटपुट का पूर्वावलोकन देखें

इनपुट

क्वेरी को क्या लौटाना चाहिए?
For every customer, their most recent order with its total and date.
टेबल और कॉलम (वैकल्पिक)
orders(id, customer_id, total_cents integer, created_at timestamp) customers(id, email text)
SQL डायलैक्ट
MySQL / MariaDB
क्वेरी शैली
एनालिटिकल (जहाँ उपयोगी हो विंडो फ़ंक्शन)
व्याख्या
विस्तृत (धारा दर धारा)

आउटपुट (अंश)

```sql
WITH ranked AS (
  SELECT
    o.customer_id,
    o.id          AS order_id,
    o.total_cents,
    o.created_at,
    ROW_NUMBER() OVER (PARTITION BY o.customer_id ORDER BY o.created_at DESC, o.id DESC) AS rn
  FROM orders AS o
)
SELECT c.id AS customer_id, c.email, r.order_id, r.total_cents / 100.0 AS total, r.created_at
FROM customers AS c
JOIN ranked AS r ON r.customer_id = c.id AND r.rn = 1
ORDER BY r.created_at DESC;
```

**स्कीमा जैसा दिया गया है।**

| धारा | क्या करता है |
|---|---|
| `ROW_NUMBER() OVER (PARTITION BY … ORDER BY created_at DESC, id DESC)` | प्रत्येक ग्राहक के ऑर्डर को नवीनतम पहले क्रम में क्रमांकित करता है; id टाईब्रेक परिणाम को निर्धारित बनाता है |
| `JOIN ranked … AND r.rn = 1` | प्रत्येक ग्राहक के लिए ठीक एक पंक्ति रखता है |
| …

आपके SQL क्वेरी जेनरेटर परिणाम यहाँ दिखाई देंगे

टिप्पणियों के साथ साफ़ कोड ब्लॉक के साथ-साथ क्या बदला इसका संक्षिप्त विवरण की अपेक्षा करें।

कैसे उपयोग करें SQL क्वेरी जेनरेटर

  1. प्रश्न को ऐसे लिखें जैसे आप किसी सहयोगी से पूछते: कौन सी पंक्तियाँ, कौन से फ़िल्टर, कौन सा समूह, किस क्रम में।
  2. यदि आपके पास टेबल और कॉलम हैं तो उन्हें पेस्ट करें — प्रत्येक टेबल एक पंक्ति में, उसके कॉलम को कोष्ठकों में। क्वेरी तब आपके वास्तविक नामों का उपयोग करती है और कोई संपादन आवश्यक नहीं होता।
  3. आप जिस डायलैक्ट का उपयोग करते हैं उसे चुनें; डेट फ़ंक्शन, LIMIT बनाम TOP और कोटिंग सभी PostgreSQL, MySQL, SQLite, SQL Server, BigQuery और Snowflake में अलग होते हैं।
  4. 'विस्तृत' व्याख्या चुनें जब आप सीख रहे हों या किसी और की अनुरोध की समीक्षा कर रहे हों, 'केवल क्वेरी' चुनें जब आपको पता हो कि आपने क्या माँगा है।

उपयोग के मामले

1

डेटा टीम की प्रतीक्षा किए बिना विश्लेषक के व्यवसाय प्रश्न का उत्तर दें

2

रिपोर्टिंग अनुरोध को ऐसी क्वेरी में बदलें जो वेयरहाउस की वास्तविक स्कीमा का सम्मान करती हो

3

धीमी क्वेरी को पढ़ने योग्य CTE संस्करण में पुनर्लेखन करें, जिसमें आवश्यक इंडेक्स हों

4

माइग्रेशन के दौरान MySQL से PostgreSQL या BigQuery में क्वेरी का अनुवाद करें

5

SELECT को ड्राफ्ट करें जो UPDATE या DELETE चलाने से पहले दिखाएगा कि कौन सी पंक्तियों को प्रभावित किया जाएगा

सर्वश्रेष्ठ परिणामों के लिए टिप्स

  • स्कीमा में कॉलम प्रकार शामिल करें (created_at टाइमस्टैम्प, total_cents इंटीजर) और क्वेरी तिथियों और धनराशि को सही ढंग से संभालती है।
  • 'only' और 'at least' को स्पष्ट रूप से कहें — '3 से अधिक ऑर्डर वाले ग्राहक' एक HAVING क्लॉज़ बन जाता है, WHERE नहीं।
  • डैशबोर्ड के लिए, विश्लेषणात्मक शैली माँगें: विंडो फ़ंक्शन रिपोर्ट को धीमा करने वाले सेल्फ-जॉइन से बचते हैं।
  • परफ़ॉर्मेंस सेक्शन पढ़ें; यह वह इंडेक्स बताता है जो पूर्ण टेबल स्कैन को लुकअप में बदलता है।

अक्सर पूछे जाने वाले प्रश्न

कौन से डेटाबेस समर्थित हैं?

PostgreSQL, MySQL और MariaDB, SQLite, SQL Server (T-SQL), BigQuery और Snowflake। क्वेरी उस डायलैक्ट के अपने फ़ंक्शन और सिंटैक्स का उपयोग करती है — डेट ट्रंकेशन, LIMIT या TOP, कोटिंग और स्ट्रिंग एग्रीगेशन सभी अलग हैं, और आउटपुट आपके द्वारा चुने गए डायलैक्ट के लिए लिखा जाता है।

क्या मुझे अपनी स्कीमा पेस्ट करनी होगी?

नहीं, लेकिन यह मददगार है। स्कीमा होने पर क्वेरी आपके सटीक टेबल और कॉलम नामों का उपयोग करती है और कोई संपादन आवश्यक नहीं होता। बिना स्कीमा के, टूल एक न्यूनतम संभावित स्कीमा मान लेता है और व्याख्या के ऊपर सभी धारणाएँ सूचीबद्ध करता है ताकि आप उन्हें सुधार सकें।

क्या यह DELETE या UPDATE लिखेगा?

केवल तब जब आप स्पष्ट रूप से संशोधन का अनुरोध करें। तब भी यह स्टेटमेंट को एक ट्रांज़ैक्शन में लपेटता है और पहले SELECT रखता है जो प्रभावित पंक्तियों का पूर्वावलोकन देता है, ताकि आप कमिट करने से पहले जाँच सकें।

यह तिथियों और धनराशि को कैसे संभालता है?

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

क्या क्वेरी तेज़ होने की गारंटी है?

यह पहले सही और दूसरे पढ़ने योग्य होने के लिए लिखी गई है, और प्रत्येक उत्तर अंत में उन इंडेक्सों को देता है जो इसे तेज़ बनाते हैं और उन संरचनाओं को जो इंडेक्स उपयोग को रोकते हैं। इसे शेड्यूल करने से पहले वास्तविक डेटा वॉल्यूम पर चलाएँ — केवल आपका डेटाबेस अपनी सांख्यिकी जानता है।

🔒
आपकी गोपनीयता सुरक्षित है

सेवा चलाने, दुरुपयोग रोकने और साइन इन होने पर आपका इतिहास दिखाने के लिए हम आपका इनपुट और परिणाम अधिकतम 90 दिनों तक रखते हैं। इन्हें हमारी गोपनीयता नीति में सूचीबद्ध AI प्रदाता प्रोसेस करते हैं। हम इन्हें बेचते नहीं हैं।

संबंधित टूल

यह एजेंट आज़माएँ

ब्रांड बिल्डरब्रांड नाम जनरेट करें, स्लोगन बनाएं, अपनी ब्रांड स्टोरी लिखें और ब्रांड गाइडलाइन्स परिभाषित करें।यह एजेंट आज़माएँ →

संबंधित वर्कफ़्लो

भारतीय SMB audience के लिए हिंग्लिश ब्लॉग कंटेंटएक English blog draft को हिंग्लिश (Roman) + Devanagari Hindi + साफ English baseline में ढालें…वर्कफ़्लो चलाएँ →

और पढ़ें