SQL formázó és szépítő
Illessz be egy rendezetlen lekérdezést, és tiszta, következetesen behúzott SQL-t kapsz. 17 dialektus, kulcsszavak kis/nagybetűsítése és egykattintásos minifier, mind a böngésződben.
A böngésződben futNincs regisztrációNincs feltöltés
Hogyan használd: SQL formázó
- Illessz be egy vagy több SQL utasítást a bemeneti mezőbe, vagy nyiss meg egy
.sqlfájlt. - Válaszd ki az adatbázis dialektusát, hogy a sajátos szintaxist, például a
::castokat, a[brackets]jelölést, a backtickeket vagy a$$stringeket helyesen értelmezze. - Állítsd be a kulcsszavak írásmódját (NAGYBETŰS, kisbetűs vagy megőrzés), a behúzást és az utasítások közötti üres sorok számát.
- Válts Minifikálás módra, hogy eltávolítsd a kommenteket és a szóközöket naplókhoz, ORM-ekhez vagy URL-paraméterekhez.
- Másold ki az eredményt, vagy töltsd le
.sqlfájlként.
Miért érdemes formázni az SQL-t?
Az ORM-naplókból, lekérdezési tervekből vagy alkalmazáskódból másolt lekérdezések általában egyetlen hosszú sorként érkeznek. Ha minden záradék (SELECT, FROM, JOIN, WHERE, GROUP BY) külön sorba kerül, az oszlopok és feltételek pedig be vannak húzva, a logika olvashatóvá válik. Kódátnézéskor a diffek is kisebbek lesznek, és könnyebben észreveszel egy hiányzó join-feltételt vagy egy rossz helyen álló OR-t.
SQL stíluskonvenciók
- A nagybetűs kulcsszavak (
SELECT,WHERE) elválasztják az SQL szintaxist a tábla- és oszlopnevektől. A legtöbb stílusútmutató ezt ajánlja, bár a dbt- és analitikai csapatoknál a kisbetűs írásmód is népszerű. - Soronként egy oszlop: így egy oszlop hozzáadása vagy törlése egysoros diff.
- A következetes behúzás (2 vagy 4 szóköz) a záradékokon és allekérdezéseken belül első pillantásra mutatja a beágyazást.
- Utasításlezárók: minden utasítást zárj
;jellel, hogy a több utasításból álló scriptek egyértelműek legyenek.
Támogatott SQL dialektusok
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 és TiDB. Ha egy lekérdezés feldolgozása nem sikerül, próbálj egy specifikusabb dialektust: a @variables, a $1 paraméterek és a gyártóspecifikus operátorok csak a saját dialektusukban ismertek.
Mit csinál a minifier?
A minify mód eltávolítja a --, # és /* */ kommenteket, a szóközöket és sortöréseket egyetlen szóközzé vonja össze, és elhagyja a vesszők és zárójelek körüli szóközöket. A string literálokat és az idézett azonosítókat ('…', "…", `…`, […], $$…$$) bájtra pontosan átmásolja, így a lekérdezés jelentése sosem változik.
Gyakran ismételt kérdések
Elküldjük az SQL-emet egy szerverre?
Megváltoztatja a formázás, hogy mit csinál a lekérdezés?
Miért kapok elemzési hibát érvényes SQL-re?
::type castokhoz, vagy SQL Servert a [bracketed] nevekhez és a @params paraméterekhez.