מעצב SQL (SQL Formatter)

הדביקו שאילתה מבולגנת וקבלו SQL נקי עם הזחה עקבית. תמיכה ב-17 דיאלקטים, ברישיות של מילות מפתח ובכיווץ בלחיצה אחת, הכול בדפדפן שלכם.

רץ בדפדפן שלכםבלי הרשמהשום דבר לא מועלה

SQL מעוצב

איך משתמשים בכלי מעצב SQL

  1. הדביקו משפט SQL אחד או יותר בתיבת הקלט, או פתחו קובץ .sql.
  2. בחרו את הדיאלקט של מסד הנתונים כדי שהתחביר שלו, כמו המרות ::, ‏[brackets], ‏backticks או מחרוזות $$, ינותח נכון.
  3. הגדירו רישיות של מילות מפתח (UPPER,‏ lower או שמירה על המקור), הזחה ומספר השורות הריקות בין משפטים.
  4. עברו לכיווץ כדי להסיר הערות ורווחים עבור לוגים, ORM או פרמטרים ב-URL.
  5. העתיקו את התוצאה או הורידו אותה כקובץ .sql.

למה לעצב SQL?

שאילתות שמועתקות מלוגים של ORM, מתוכניות ביצוע או מקוד האפליקציה מגיעות בדרך כלל כשורה ארוכה אחת. הצבת כל פסוקית (SELECT, FROM, JOIN, WHERE, GROUP BY) בשורה משלה והזחת עמודות ותנאים הופכות את הלוגיקה לקריאה. זה גם מקטין את ה-diffs ב-code review ועוזר לזהות תנאי join חסר או OR במקום הלא נכון.

מוסכמות סגנון ב-SQL

  • מילות מפתח באותיות גדולות (SELECT, WHERE) מבדילות בין תחביר SQL לשמות טבלאות ועמודות. רוב מדריכי הסגנון ממליצים על כך, אף שאותיות קטנות פופולריות בצוותי dbt ואנליטיקה.
  • עמודה אחת בכל שורה הופכת הוספה או הסרה של עמודה ל-diff של שורה אחת.
  • הזחה עקבית (2 או 4 רווחים) בתוך פסוקיות ותתי-שאילתות מראה את הקינון במבט חטוף.
  • סיום משפטים: סיימו כל משפט ב-; כדי שסקריפטים מרובי משפטים יהיו חד-משמעיים.

דיאלקטים נתמכים של SQL

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 ואופרטורים ייחודיים לספק מזוהים רק בדיאלקט שלהם.

מה עושה הכיווץ

מצב הכיווץ מסיר הערות --, # ו-/* */, מצמצם רווחים ושבירות שורה לרווח יחיד, ומשמיט רווחים סביב פסיקים וסוגריים. מחרוזות ומזהים במירכאות ('…', "…", `…`, […], $$…$$) מועתקים בית אחר בית, כך שמשמעות השאילתה לעולם לא משתנה.

שאלות נפוצות

האם ה-SQL שלי נשלח לשרת?
לא. העיצוב משתמש בספריית הקוד הפתוח sql-formatter שרצה בדפדפן שלכם. שאילתות שמכילות שמות טבלאות, נתוני לקוחות או פרטי גישה נשארות במחשב שלכם.
האם העיצוב משנה את מה שהשאילתה עושה?
לא. משתנים רק רווחים, שבירות שורה ו(אם תבחרו) הרישיות של מילות המפתח. מזהים, מחרוזות והערות נשמרים כפי שנכתבו.
למה אני מקבל שגיאת ניתוח על SQL תקין?
כנראה שהשאילתה משתמשת בתחביר שייחודי למסד נתונים אחר. בחרו את הדיאלקט המתאים, למשל PostgreSQL עבור המרות ::type או SQL Server עבור שמות [bracketed] ו-@params.
אפשר לעצב כמה משפטים בבת אחת?
כן. הפרידו בין המשפטים בנקודה-פסיק. אפשר לבחור כמה שורות ריקות יופיעו ביניהם בפלט.
האם רישיות מילות המפתח תשנה את שמות העמודות שלי?
לא. רק מילות מפתח שמורות, טיפוסי נתונים ופונקציות מובנות משנים רישיות. שמות טבלאות ועמודות שומרים על האיות המקורי שלהם.

כלים קשורים