Actualizado el 2026-10-05 · Por Sergi (spnfury)

Cómo consultar un archivo CSV con SQL sin base de datos (5 herramientas comparadas)

SQL es la forma más natural de hacerle una pregunta a datos tabulares: qué clientes han pedido más de tres veces, ingresos por mes, correos duplicados. No hace falta un servidor de base de datos para ello. Varias herramientas leen un CSV directamente y permiten consultarlo como si fuera una tabla.

Esta guía compara cinco, desde una herramienta de navegador para una pregunta puntual hasta DuckDB para gigabytes de datos, con el comando exacto de cada una.

De un vistazo

HerramientaDónde correInstalaciónTipos inferidosJOINIdeal para
CSV Creator (AlaSQL)NavegadorNingunaNúmerosNo (un solo CSV)Una pregunta rápida, datos privados
DuckDB CLITerminalUn binarioSí, todosSíArchivos grandes, analítica
q (harelba/q)TerminalBinario o pipSíSíTuberías de shell
csvsql de csvkitTerminalpipSíSíUsuarios de Python y csvkit
SQLite .importTerminalSuele venir instaladoNo (todo texto)SíConservar los datos para después

1. En el navegador: Consultar CSV con SQL de CSV Creator

Pegas el CSV, escribes una consulta con FROM ? como nombre de tabla y pulsas Ejecutar. El motor es AlaSQL, una implementación de SQL en JavaScript, así que los datos nunca salen de la página. Las celdas que parecen números se convierten en números, lo que hace que SUM y AVG funcionen; se admiten campos entrecomillados con comas.

Cubre SELECT con WHERE, GROUP BY, HAVING, ORDER BY, LIMIT, los agregados habituales, CASE, LIKE, IN, subconsultas y funciones de texto. Lo que no puede hacer es unir dos archivos, porque solo se carga un CSV. Los resultados se descargan como un CSV nuevo.

SELECT city, COUNT(*) AS pedidos, SUM(amount) AS ingresos
FROM ?
GROUP BY city
ORDER BY ingresos DESC

Consultar CSV con SQL Online Gratis

2. DuckDB: la opción más rápida para archivos grandes

DuckDB es una base de datos analítica embebida que lee archivos CSV directamente, infiere tipos incluidas las fechas y ejecuta consultas sobre gigabytes en segundos. La CLI es un único binario sin dependencias.

duckdb -c "SELECT city, COUNT(*), SUM(amount) FROM read_csv_auto('pedidos.csv') GROUP BY city ORDER BY 3 DESC"

3. q: SQL en tu tubería de shell

q trata el CSV como una tabla con el nombre del archivo y acepta la sintaxis estándar de SQLite. Brilla en tuberías: haces cat de un log, lo consultas y pasas el resultado al siguiente comando.

q -H -d , "SELECT city, COUNT(*) FROM ./pedidos.csv GROUP BY city"

4. csvsql de csvkit

csvkit es una suite de Python para trabajar con CSV (csvcut, csvgrep, csvstat...). csvsql carga el archivo en una base de datos SQLite en memoria y ejecuta tu consulta.

csvsql --query "SELECT city, COUNT(*) AS n FROM pedidos GROUP BY city" pedidos.csv

5. SQLite: importar una vez, consultar muchas

SQLite viene con la mayoría de sistemas operativos. Importar un CSV crea una tabla que puedes conservar, indexar y consultar repetidamente.

sqlite3 pedidos.db
.mode csv
.import pedidos.csv pedidos
SELECT city, COUNT(*) FROM pedidos GROUP BY city;

Cuál usar

Preguntas frecuentes

¿Puedo ejecutar SQL sobre un CSV sin instalar nada?

Sí. Consultar CSV con SQL de CSV Creator ejecuta un motor SQL en JavaScript (AlaSQL) en tu navegador: pega el CSV, escribe SELECT ... FROM ? y ejecuta. No se instala nada y no se sube nada.

¿Qué diferencia hay entre DuckDB y SQLite para archivos CSV?

SQLite es un almacén transaccional por filas que necesita importar el CSV primero y trata cada columna como texto. DuckDB es un motor analítico columnar que lee el CSV directamente, infiere tipos y ejecuta agregaciones mucho más rápido con archivos grandes. Para análisis usa DuckDB; para guardar y editar registros, SQLite.

¿Por qué SUM devuelve 0 o una cadena en mi CSV?

La columna contiene valores que no son números simples: separadores de miles, símbolos de moneda, espacios. Las herramientas de navegador y q solo convierten decimales limpios. Limpia la columna o usa CAST en la consulta; a DuckDB se le puede indicar el tipo explícitamente en read_csv.

¿Cómo uno dos archivos CSV con SQL?

Usa una herramienta que cargue varios archivos como tablas: DuckDB (read_csv_auto en cada archivo), q (dos nombres de archivo en FROM), csvsql (pasa ambos archivos) o SQLite tras importar los dos. Las herramientas de navegador que cargan un solo CSV no pueden unir.

¿Es seguro consultar archivos CSV confidenciales online?

Solo con herramientas que se ejecutan en el navegador sin subir nada, como CSV Creator. Comprueba la pestaña de red de las herramientas de desarrollo: ninguna petición debe llevar tus datos. Para un control máximo usa una herramienta local como DuckDB o q.

Herramientas relacionadas