Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Minifikator SQL

Minifikuj zapytania SQL: usun zbedne spacje, komentarze i biale znaki. Kompaktowy SQL dla logów i cachowania. Bezpłatnie.

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}
325 znaków

Rozmiar przed

325 B

Rozmiar po

239 B

Znaki usunięte

86 B

spacje, tabulatory i komentarze poza stringami

Oszczędność

26,5%
OK

procent wejścia

SELECT u.id, u.email, COUNT(o.id) AS orders_count FROM users u LEFT JOIN orders o ON o.user_id= u.id AND o.status= 'paid' WHERE u.created_at>= '2025-01-01' AND u.email LIKE '%@example.com' GROUP BY u.id, u.email ORDER BY orders_count DESC;
Kod usuwa komentarze liniowe (dwa myślniki do końca linii) i blokowe (ukośnik-gwiazdka), scala białe znaki do jednej spacji i zdejmuje spacje przy przecinkach, nawiasach i średnikach
ZasadaWejścieWynik silnika
Komentarz liniowy "-- …" (do końca linii) SELECT * FROM t -- notatka WHERE id = 1 SELECT* FROM t WHERE id= 1
Komentarz blokowy "/* … */" SELECT /* wskazówka */ * FROM t SELECT* FROM t
Spacje, tabulatory i nowe linie (poza stringami) SELECT id, email FROM users SELECT id, email FROM users
Spacje przy przecinkach, nawiasach i średnikach INSERT INTO t (a, b) VALUES (1 , 2) ; INSERT INTO t(a, b) VALUES(1, 2);

Spacje PRZED operatorami (=, <, >, +, -, *, /) też znikają, więc „x = 1” zmienia się w „x= 1” — to nadal poprawne SQL. Hasz (#) nie jest traktowany jako komentarz, więc komentarze w stylu MySQL z # zostają w kodzie.

Minifikator śledzi pojedyncze i podwójne cudzysłowy oraz backticki: wewnątrz nich nic nie jest usuwane ani sklejane, bo białe znaki w stringach są częścią danych
Fragment zapytaniaWynik silnikaDowód
'a -- b' SELECT 'a -- b' FROM t podbite myślniki w stringu NIE otwierają komentarza
'c /* d */' SELECT 'c /* d */' FROM t gwiazdka-ukośnik w stringu NIE zamyka komentarza (i nie otwiera)
'Jan Kowalski' SELECT 'Jan Kowalski' FROM t podwójna spacja w stringu zostaje — białe znaki w treści są znaczące
'it''s ok' SELECT 'it''s ok' FROM t podwojony apostrof (escape) przepisany bez zmian
a - -1 SELECT a- -1 FROM t spacja między minusami zostaje, żeby nie powstał komentarz "--"

Niedomknięty cudzysłów sprawi, że reszta skryptu zostanie potraktowana jak treść stringu (tak jak czyni to baza) — wynik może być wtedy większy niż wejście, ale nigdy nie zmieni znaczenia danych.

Warto wiedzieć — minifikacja SQL w praktyce

Po co minifikować SQL

Zminifikowane zapytania są krótsze w logach, kodzie aplikacji i żądaniach sieciowych. Silnik bazy ignoruje nadmiarowe białe znaki i komentarze, więc sklejenie nie zmienia planu zapytania.

Stringi to strefa święta

Gwiazdka-ukośnik czy podwójny myślnik wewnątrz cudzysłowów to zwykły tekst: nazwiska ze spacjami, treści maili czy fragmenty kodu muszą przetrwać bajt w bajt. Ten minifikator śledzi stan cudzysłowów znak po znaku.

Zachowaj nowe linie przy debugowaniu

Opcja „preserve line breaks” zostawia łamanie linii, więc numer linii w komunikacie błędu bazy wskaże sensowne miejsce. Do produkcji wyłącz — do analizy błędu włącz.

Czego minifikator nie robi

Nie rozwija gwiazdek do listy kolumn, nie zmienia kolejności złączeń ani nie optymalizuje zapytania — usuwa wyłącznie to, co baza i tak odrzuci: komentarze i zbędne białe znaki poza stringami.

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Minifikator SQL — zmniejsz i zoptymalizuj zapytania SQL

Minifikator SQL to narzędzie online, które skraca zapytania SQL usuwając zbędne spacje, tabulatory, znaki nowej linii i komentarze. Wynikowy kod SQL jest funkcjonalnie identyczny, ale zajmuje mniej miejsca i jest gotowy do użycia w API, logach i kompaktowych formatach.

Czym jest minifikacja SQL?

Minifikacja SQL (SQL minification) to proces usuwania z kodu SQL wszystkich elementów niezbędnych do czytelności człowieka, ale zbędnych dla silnika bazy danych: wielokrotnych spacji, tabulatorów, znaków nowej linii, wcięć i komentarzy (-- komentarz jednolinijkowy, /* komentarz wielolinijkowy */). Wynikowe zapytanie jest syntaktycznie i semantycznie identyczne z oryginałem.

Kiedy warto minifikować SQL?

Przesyłanie przez API — gdy zapytania SQL są przesyłane przez API (np. w body zapytania JSON), minifikacja redukuje rozmiar przesyłanych danych. Logi systemowe — minimalny SQL w logach jest czytelniejszy na jednej linii i łatwiejszy do przeszukiwania grep/awk. Kod produkcyjny — ORM-y i query builderzy często generują formatowany SQL do debugowania; przed wdrożeniem na produkcję warto go zminifikować. Oszczędność pamięci — w systemach przechowujących zapytania SQL (np. query cache, query store), minifikacja zmniejsza zużycie pamięci.

Co robi minifikator SQL?

Narzędzie: usuwa wiodące i kończące białe znaki, zastępuje wiele kolejnych spacji jedną spacją, usuwa tabulatory i wcięcia, usuwa znaki nowej linii (zamienia na spacje), usuwa komentarze jednolinijkowe (--) i wielolinijkowe (/* */), zachowuje spacje w literałach tekstowych (ciągach w cudzysłowach), normalizuje słowa kluczowe SQL (opcjonalnie — do wielkich liter).

Przykład działania

Wejście (rozbudowane zapytanie z formatowaniem):
SELECT
    u.id,
    u.name
FROM users u
-- Filtruj tylko aktywnych
WHERE u.active = 1
  AND u.created_at > '2024-01-01';


Wyjście (zminifikowane): SELECT u.id, u.name FROM users u WHERE u.active = 1 AND u.created_at > '2024-01-01';

Najczęściej zadawane pytania

Czy minifikacja SQL zmienia działanie zapytania?

Nie — minifikacja SQL usuwa wyłącznie białe znaki i komentarze, które są ignorowane przez silnik SQL. Zapytanie po minifikacji jest semantycznie identyczne z oryginałem i zwróci dokładnie te same wyniki. Jedyna zmiana to czytelność dla człowieka — minified SQL jest trudniejszy do analizy.

Czy minifikacja SQL jest bezpieczna dla zapytań z literałami tekstowymi?

Tak, pod warunkiem że minifikator rozumie składnię SQL. Dobry minifikator SQL nie modyfikuje zawartości łańcuchów tekstowych (string literals) — spacje i znaki specjalne wewnątrz cudzysłowów lub apostrofów są zachowywane bez zmian. Narzędzie na webp.pl obsługuje to poprawnie.

Czy mogę minifikować zapytania dla MySQL, PostgreSQL i SQL Server?

Tak — podstawowa składnia SQL jest standardowa w ANSI SQL i działa z MySQL, PostgreSQL, SQL Server, SQLite i Oracle. Specyficzne rozszerzenia dialektów (np. PostgreSQL-specyficzne $$ delimitery, MySQL backtick identifiers) mogą wymagać dodatkowej obsługi — sprawdź wynik po minifikacji dla zapytań używających rozszerzeń dialektu.

Jak minifikować SQL w kodzie PHP, Python lub Java?

W PHP możesz użyć prostego wyrażenia regularnego lub biblioteki sql-formatter. W Python dostępne są pakiety sqlfluff i sqlparse. W Java — JSqlParser. Dla prostych przypadków wystarczy: preg_replace('/\s+/', ' ', trim($sql)) w PHP, ale nie usunie to komentarzy — do tego potrzeba parsera SQL.

Jaka jest różnica między minifikacją a formatowaniem SQL?

To operacje odwrotne: formatowanie SQL (prettify/beautify) dodaje wcięcia, znaki nowej linii i formatuje kod dla czytelności ludzkiej. Minifikacja usuwa te elementy dla kompaktowości maszynowej. Formatowanie jest używane podczas developmentu, minifikacja — w środowiskach produkcyjnych i API.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!