CSV Query

Run a SQL-ish SELECT / WHERE / ORDER BY / LIMIT over a CSV. Runs entirely in your browser, no upload.

Result (CSV)

CSV query

Query a CSV with a small SQL-style language — projection, filtering, sorting, and limiting — all in your browser. Nothing is uploaded.

Syntax

SELECT <columns | *> [WHERE <col op value>] [ORDER BY <col> [ASC|DESC]] [LIMIT n]

Examples

For grouping/aggregation use the CSV group-by or pivot tools.

FAQ

Is my data uploaded?

No — it's processed locally with WebAssembly.

Can I combine conditions with AND / OR?

Not yet — WHERE takes exactly one <column> <op> <value> condition. To apply two filters, run the query once, then feed the result back in with the second condition. For grouping or aggregation, use the CSV group-by or pivot tools instead.

My file uses semicolons or tabs, not commas — will it work?

Yes. Set the delimiter to the actual separator character, or use one of the names comma, tab, semicolon, or pipe. Anything longer than a single character (other than those names) is rejected.

Why is my first row of data missing from the results?

The first row is always read as the header — it supplies the column names that SELECT, WHERE, and ORDER BY refer to. If your CSV has no header, add one, or refer to columns by 1-based index (SELECT 1, 3).

Developer & Automation Access

Run it from the terminal

Same engine as this page, headless — via the gizza CLI:

gizza tool csv-query "name,age,city
Alice,30,NYC
Bob,25,LA"

New to the CLI? Get gizza →

Open it by URL

Pre-fill and auto-run this tool with query parameters — the names match the API/CLI:

https://gizza.ai/tools/csv-query/?data=name%2Cage%2Ccity%0AAlice%2C30%2CNYC%0ABob%2C25%2CLA&q=SELECT%20name%2C%20age%20WHERE%20age%20%3E%3D%2030%20ORDER%20BY%20age%20DESC%20LIMIT%205&delimiter=%2C

Machine-readable descriptor: tool.json — title + parameters JSON Schema for agents.