Hogyan használd?
- Illeszd be az SQL-lekérdezést.
- Válaszd ki az adatbázis nyelvjárását, a kulcsszavak írásmódját és a behúzást.
- A formázott eredmény azonnal megjelenik; a „Tömörítés” móddal egy sorba is teheted.
- Másold ki az eredményt.
Mire jó az SQL-formázó?
Az alkalmazások naplóiban, ORM-ek által generált lekérdezésekben és régi kódban az SQL gyakran egyetlen hosszú sor, amelyben nehéz kiigazodni. A formázó a lekérdezést szerkezete szerint tördeli: minden fő záradék (SELECT, FROM, WHERE, GROUP BY, ORDER BY) új sorba kerül, a mezők és feltételek behúzva, egymás alatt.
Előtte:
select u.id, u.nev, count(r.id) as rendelesek from felhasznalok u left join rendelesek r on r.felhasznalo_id = u.id where u.aktiv = 1 group by u.id, u.nev
Utána:
SELECT
u.id,
u.nev,
COUNT(r.id) AS rendelesek
FROM
felhasznalok u
LEFT JOIN rendelesek r ON r.felhasznalo_id = u.id
WHERE
u.aktiv = 1
GROUP BY
u.id,
u.nev
Így könnyebb átnézni a JOIN-feltételeket, kiszúrni egy hiányzó feltételt, vagy kódellenőrzésnél (code review) megmutatni a változást.
Nyelvjárások és beállítások
Az SQL-nek sok nyelvjárása van, amelyek a kulcsszavakban, az azonosítók idézésében és a speciális szintaxisban térnek el: a MySQL és a MariaDB backtick jellel idéz, a PostgreSQL "idézőjellel", az SQL Server [szögletes zárójellel]; a PostgreSQL ismeri a :: típusátalakítást, a BigQuery a STRUCT és ARRAY típusokat, az Oracle a PL/SQL-blokkokat.
A formázó a nyílt forrású sql-formatter könyvtárra (MIT-licenc) épül, és a kiválasztott nyelvjárás szabályai szerint dolgozik. Ha hibát jelez, általában rossz nyelvjárás van kiválasztva, vagy a lekérdezésben nem zárt zárójel, idézőjel van. Beállítható:
- kulcsszavak: NAGYBETŰVEL (a legelterjedtebb konvenció), kisbetűvel vagy változatlanul;
- behúzás: 2 vagy 4 szóköz.
A formázás nem változtat a lekérdezés jelentésén: csak szóközöket, sortöréseket és a kulcsszavak kis-nagybetűs írását módosítja. A szöveges értékek ('...') és az azonosítók változatlanok maradnak.
Tömörítés egy sorba
A „Tömörítés” mód az ellenkezőjét teszi: eltávolítja a -- és /* */ megjegyzéseket, a felesleges szóközöket és sortöréseket, így a lekérdezés egyetlen sorban fér el. Hasznos, ha a lekérdezést egy konfigurációs fájlba, egy JSON-mezőbe, parancssori paraméterbe vagy naplóba kell tenni. A szöveges literálokban lévő szóközökhöz nem nyúl, így a 'két szóköz' értéke nem változik.
Figyelem: ha a lekérdezés olyan rendszerbe kerül, amely a sortörést is jelentéssel bíró elválasztónak tekinti (például egyes szkriptfuttatók a GO parancsnál), a tömörítés előtt ellenőrizd az eredményt.
Biztonság
A lekérdezést a böngésződ formázza, semmi nem kerül fel szerverre. Ennek ellenére jó gyakorlat, hogy éles adatbázis jelszavát, ügyféladatokat vagy személyes adatokat tartalmazó lekérdezést ne másolj be ismeretlen weboldalakra. A formázó nem futtatja és nem ellenőrzi a lekérdezést az adatbázison: a helyes formázás nem jelenti, hogy a lekérdezés hibátlan vagy gyors. Lassú lekérdezésnél nézd meg a végrehajtási tervet (EXPLAIN), és ellenőrizd az indexeket.
Bevált SQL-stílusszabályok
Csapatban dolgozva sokat ér az egységes stílus. A leggyakoribb konvenciók:
- kulcsszavak nagybetűvel (SELECT, FROM, WHERE), az azonosítók (táblák, oszlopok) kisbetűvel, aláhúzással (
megrendeles_datum); - minden oszlop külön sorban a SELECT után, a vessző a sor végén;
- rövid, beszédes táblaaliasok (
ua felhasznalok,ra rendelesek táblához), és minden oszlop elé a tábla aliasa, ha több tábla szerepel; - explicit JOIN (INNER JOIN, LEFT JOIN … ON) a régi, WHERE-be írt összekapcsolás helyett;
- SELECT * helyett a szükséges oszlopok felsorolása, mert gyorsabb, és a táblaszerkezet változásakor sem okoz meglepetést.
A formázó a tördelésben és a kulcsszavakban segít, a névadás és a lekérdezés felépítése a te dolgod.
A megjegyzéseket is érdemes beszédesen írni: a -- egysoros megjegyzés a sor végéig tart, a /* … */ többsoros. A formázó a megjegyzéseket megtartja, a tömörítés viszont eltávolítja őket, ezért a tömörített változatot ne használd a kód eredeti, karbantartott példányaként. A formázott lekérdezést verziókezelőbe (Git) téve a későbbi módosítások is könnyebben áttekinthetők, mert a változás csak az érintett sorokban látszik.
Gyakori kérdések
Melyik adatbázisokat támogatja?
Általános SQL, MySQL, MariaDB, PostgreSQL, SQL Server (T-SQL), Oracle PL/SQL, SQLite, BigQuery és Snowflake.
Megváltoztatja a lekérdezés működését?
Nem, csak a szóközöket, sortöréseket és a kulcsszavak írásmódját módosítja.
Miért ad hibát a formázó?
Leggyakrabban rossz nyelvjárás van kiválasztva, vagy a lekérdezésben lezáratlan zárójel vagy idézőjel van.
Feltöltődik a lekérdezésem?
Nem, a formázás a böngésződben fut.
Források
Utoljára módosítva: 2026. november 3.