Ładuje swój silnik przy pierwszym użyciu, więc nie ma wersji do pobrania offline — ale i tak działa prywatnie w Twojej przeglądarce, nic nie jest przesyłane.
O tym narzędziu
To narzędzie wczytuje CSV do prawdziwej bazy danych SQLite w pamięci i pozwala uruchamiać na niej rzeczywiste SQL — SELECT, WHERE, ORDER BY, GROUP BY, agregaty takie jak SUM i COUNT, podzapytania i self-joiny działają dokładnie tak, jak w bazie danych. Napędza je oficjalne SQLite skompilowane do WebAssembly, więc silnik zapytań jest prawdziwy, a nie częściową reimplementacją.
Nic nie jest przesyłane. Silnik SQLite i Twój CSV nigdy nie opuszczają urządzenia — cała baza danych żyje w pamięci karty przeglądarki i znika po jej zamknięciu. Dzięki temu jest bezpiecznym brudnopisem do przeglądania eksportów, danych sprzedaży, logów lub każdego arkusza, którego wolałbyś nie wklejać do bazy danych online. Ponieważ korzysta z oficjalnej, wolnej od eval kompilacji SQLite, działa także przy rygorystycznych zasadach bezpieczeństwa, w których narzędzia w stylu sql.js są blokowane.
Nazwy kolumn są pobierane z wiersza nagłówka i sanityzowane do prawidłowych identyfikatorów; każda wartość jest przechowywana jako tekst, więc rzutuj na liczby w zapytaniu, gdy potrzebujesz działań arytmetycznych (na przykład CAST(price AS REAL)). Wyniki są renderowane jako tabela, którą możesz pobrać jako CSV.
Najczęściej zadawane pytania
Czy mój CSV lub moje zapytanie są gdziekolwiek przesyłane?
Nie. Silnik SQLite działa w całości wewnątrz Twojej przeglądarki przez WebAssembly, a baza danych jest trzymana wyłącznie w pamięci. Twój CSV, Twoje SQL i wyniki nigdy nie opuszczają urządzenia i znikają po zamknięciu karty.
Jakie SQL i które formaty plików są obsługiwane?
Wejściem jest CSV (rozdzielany przecinkiem, średnikiem, tabulatorem lub kreską pionową). Silnik to prawdziwe SQLite, więc obsługiwane są standardowe zapytania SELECT — WHERE, ORDER BY, GROUP BY, HAVING, LIMIT, agregaty, podzapytania i złączenia. Wczytanie CSV tworzy świeżą tabelę, więc nie jest to stratne ponowne kodowanie; po prostu odczytuje Twoje wartości do bazy danych.
Dlaczego porównania liczbowe zachowują się jak tekst?
Każda kolumna jest przechowywana jako TEXT, aby nic nie było zgadywane ani utracone, co oznacza, że SQLite sortuje je i porównuje jak łańcuchy znaków. Rzutuj w zapytaniu, gdy potrzebujesz prawdziwych liczb — np. ORDER BY CAST(price AS REAL) DESC lub WHERE CAST(qty AS INTEGER) > 100.
Jak wybierane są nazwy kolumn i tabeli?
Nazwy kolumn pochodzą z wiersza nagłówka (przy włączonym polu wyboru nagłówka) i są sanityzowane do prawidłowych identyfikatorów SQL, z usuwaniem duplikatów; bez nagłówka stają się col1, col2 i tak dalej. Nazwa tabeli domyślnie to t i można ją zmienić przed wczytaniem CSV.
Więcej narzędzi