UTILS.
100% nel browser

Interroga il CSV con SQL

Carica un CSV ed esegui vero SQL (SELECT, WHERE, GROUP BY, JOIN) su di esso — 100% nel tuo browser.

Carica il suo motore al primo utilizzo, quindi non c'è una copia scaricabile offline, ma funziona comunque in privato nel tuo browser, senza caricare nulla.

Informazioni su questo strumento

Questo strumento carica un CSV in un vero database SQLite in memoria e ti permette di eseguire SQL autentico su di esso — SELECT, WHERE, ORDER BY, GROUP BY, aggregazioni come SUM e COUNT, subquery e self-join funzionano esattamente come farebbero in un database. È basato sull'SQLite ufficiale compilato in WebAssembly, quindi il motore di query è quello vero, non una reimplementazione parziale.

Nulla viene caricato. Il motore SQLite e il tuo CSV non lasciano mai il tuo dispositivo — l'intero database vive nella memoria della scheda del browser e scompare quando la chiudi. Questo lo rende un blocco per appunti sicuro per esplorare esportazioni, dati di vendita, log o qualsiasi foglio di calcolo che preferiresti non incollare in un database online. Poiché usa la build ufficiale di SQLite senza eval, funziona anche sotto policy di sicurezza rigorose in cui gli strumenti in stile sql.js sono bloccati.

I nomi delle colonne vengono presi dalla riga di intestazione e ripuliti in identificatori validi; ogni valore viene memorizzato come testo, quindi convertilo in numero nella tua query quando ti serve l'aritmetica (ad esempio CAST(price AS REAL)). I risultati vengono mostrati come una tabella che puoi scaricare in CSV.

Domande frequenti

Il mio CSV o la mia query vengono caricati da qualche parte?
No. Il motore SQLite viene eseguito interamente all'interno del tuo browser tramite WebAssembly e il database è tenuto solo in memoria. Il tuo CSV, il tuo SQL e i risultati non lasciano mai il tuo dispositivo e spariscono quando chiudi la scheda.
Quale SQL e quali formati di file sono supportati?
L'input è CSV (separato da virgola, punto e virgola, tabulazione o barra verticale). Il motore è il vero SQLite, quindi le query SELECT standard — WHERE, ORDER BY, GROUP BY, HAVING, LIMIT, aggregazioni, subquery e join — sono supportate. Il caricamento del CSV crea una tabella nuova, quindi non è una ricodifica con perdite; legge semplicemente i tuoi valori in un database.
Perché i confronti numerici si comportano come testo?
Ogni colonna viene memorizzata come TEXT così nulla viene indovinato o perso, il che significa che SQLite le ordina e le confronta come stringhe. Converti nella tua query quando ti servono numeri veri — ad es. ORDER BY CAST(price AS REAL) DESC oppure WHERE CAST(qty AS INTEGER) > 100.
Come vengono scelti i nomi delle colonne e delle tabelle?
I nomi delle colonne provengono dalla riga di intestazione (con la casella di intestazione attiva) e vengono ripuliti in identificatori SQL validi, eliminando i duplicati in caso di conflitto; senza un'intestazione diventano col1, col2 e così via. Il nome della tabella per impostazione predefinita è t e può essere cambiato prima di caricare il CSV.

Altri strumenti