SQL फ़ॉर्मैटर और Beautifier
उलझी हुई क्वेरी पेस्ट करें और साफ़, एक जैसी इंडेंट वाली SQL पाएँ। 17 डायलेक्ट, कीवर्ड केसिंग और एक-क्लिक मिनिफ़ायर समर्थित, सब आपके ब्राउज़र में।
आपके ब्राउज़र में चलता हैसाइन-अप ज़रूरी नहींकुछ भी अपलोड नहीं होता
SQL फ़ॉर्मैटर का उपयोग कैसे करें
- इनपुट बॉक्स में एक या ज़्यादा SQL स्टेटमेंट पेस्ट करें, या कोई
.sqlफ़ाइल खोलें। - अपना डेटाबेस डायलेक्ट चुनें ताकि उसका सिंटैक्स, जैसे
::cast,[brackets], backticks या$$स्ट्रिंग, सही तरह पार्स हो। - कीवर्ड केस (UPPER, lower या जैसा है वैसा), इंडेंटेशन और स्टेटमेंट के बीच खाली लाइनों की संख्या सेट करें।
- लॉग, ORM या URL पैरामीटर के लिए कमेंट और व्हाइटस्पेस हटाने हेतु मिनिफ़ाई पर स्विच करें।
- नतीजा कॉपी करें या
.sqlफ़ाइल के रूप में डाउनलोड करें।
SQL फ़ॉर्मैट क्यों करें?
ORM लॉग, query plan या एप्लिकेशन कोड से कॉपी की गई क्वेरी आमतौर पर एक लंबी लाइन में आती हैं। हर क्लॉज़ (SELECT, FROM, JOIN, WHERE, GROUP BY) को अपनी लाइन पर रखने और कॉलम व शर्तों को इंडेंट करने से लॉजिक पढ़ने लायक बनता है। इससे कोड रिव्यू के diff भी छोटे होते हैं और छूटी join शर्त या गलत जगह रखा OR पकड़ने में मदद मिलती है।
SQL स्टाइल परंपराएँ
- Uppercase कीवर्ड (
SELECT,WHERE) SQL सिंटैक्स को टेबल और कॉलम नामों से अलग करते हैं। ज़्यादातर स्टाइल गाइड यही सुझाती हैं, हालाँकि dbt और analytics टीमों में lowercase लोकप्रिय है। - हर लाइन में एक कॉलम से कॉलम जोड़ना या हटाना एक लाइन का diff बन जाता है।
- क्लॉज़ और सबक्वेरी के अंदर एक जैसा इंडेंटेशन (2 या 4 स्पेस) एक नज़र में नेस्टिंग दिखाता है।
- स्टेटमेंट टर्मिनेटर: हर स्टेटमेंट को
;से खत्म करें ताकि कई स्टेटमेंट वाली स्क्रिप्ट में कोई अस्पष्टता न रहे।
समर्थित SQL डायलेक्ट
Standard SQL, PostgreSQL, MySQL, MariaDB, SQLite, Microsoft SQL Server (T-SQL), Oracle PL/SQL, Google BigQuery, Snowflake, Amazon Redshift, Spark SQL, Trino/Presto, Hive, IBM Db2, Couchbase N1QL, SingleStore और TiDB। अगर कोई क्वेरी पार्स नहीं होती, तो ज़्यादा खास डायलेक्ट आज़माएँ: @variables, $1 पैरामीटर और वेंडर-विशिष्ट ऑपरेटर सिर्फ़ अपने डायलेक्ट में पहचाने जाते हैं।
मिनिफ़ायर क्या करता है
मिनिफ़ाई मोड --, # और /* */ कमेंट हटाता है, व्हाइटस्पेस और लाइन ब्रेक को एक स्पेस में समेटता है, और कॉमा व कोष्ठकों के आसपास के स्पेस हटाता है। स्ट्रिंग लिटरल और कोट किए गए identifier ('…', "…", `…`, […], $$…$$) बाइट-दर-बाइट कॉपी होते हैं, इसलिए क्वेरी का अर्थ कभी नहीं बदलता।
अक्सर पूछे जाने वाले सवाल
क्या मेरी SQL किसी सर्वर पर भेजी जाती है?
क्या फ़ॉर्मैटिंग से क्वेरी का काम बदल जाता है?
मान्य SQL पर पार्स एरर क्यों मिलता है?
::type cast के लिए PostgreSQL या [bracketed] नामों और @params के लिए SQL Server।