SQLite query inside a Bash function
Part of the workflow for building my website is the generation of a table in tab-separated column format (.tsv). The source data is found in four other .tsv files. I use an SQLite query to perform a 4-way join and write out the new table. For convenience, I wrote a script that encapsulates the query inside a Bash function. The example below illustrates this technique. repertoire() { pushd $CMM_SOURCES/_data sqlite3 <<EOS .headers on .mode tabs .import category.tsv category .import composition.tsv composition .import concert.tsv concert .import program.tsv program .once repertoire.tsv…
SQLite query inside a Bash function launched on July 7, 2021 with 134 votes, #310 of 3,502 launches that month and more than 95% of that year's launches.
In plain words
This is a Bash scripting technique for automating data processing workflows. It demonstrates how to embed SQLite queries within a Bash function to join multiple tab-separated value files and generate a consolidated output table. The example shows importing four .tsv files, performing a four-way database join with filtering conditions, and writing results to a new .tsv file. It is designed for developers and data engineers who need to combine data from multiple sources during static site generation or similar build processes.
written from the facts on this page · September 2026
From the sources
In the maker’s words, at launch
Part of the workflow for building my website is the generation of a table in tab-separated column format (.tsv). The source data is found in four other .tsv files. I use an SQLite query to perform a 4-way join and write out the new table. For convenience, I wrote a script that encapsulates the query inside a Bash…
Does a similar job
all alternatives →
SQLite Plugin for Jekyll2024 · github.com · ▲227I love Jekyll, especially the Datafiles[0] feature, which lets you use CSV/JSON/YAML files and iterate through them. Mixed with the Jekyll Data Pages generator[1], which lets you create a page for every row in your dataset, it is a very powerful combination. However, Liquid is a terrible language for data-mangling, and simple filtering/sorting/merging can become very annoying. So I wrote a Jekyll SQLite plugin that lets you use the same data interface in Jekyll/Liquid, but backed by a SQLite file(s). It gives you the simplicity of the Baked Data pattern[2], and the…
TextQuery – Query CSV, JSON, XLSX Files with SQL2025 · textquery.app · ▲163Hiya HN! TextQuery is my sabbatical project that I have been working on for the past six months. It was born out of a personal pain point. Anytime I wanted to analyze raw CSV data, I had to create a schema first before I could import it for querying. And to create charts, I had to use yet another tool. I also disliked how bad charts from popular tools like Excel, Google Sheets looked like. I wanted an easier way to do this and TextQuery was my solution: an all-in-one tool to query CSV files using SQL and create beautiful visualizations as well. Currently, it's a macOS app and focused on CSV…
OctoSQL – Query and join multiple databases and files, written in Go2019 · github.com · ▲310OctoSQL is a query tool that allows you to join, analyse and transform data from multiple databases and file formats using SQL. - cube2222/octosql
SQLite JavaScript - extend your database with JavaScript2025 · github.com · ▲199Create custom SQLite functions in JavaScript. Extend your database with scalars, aggregates, window functions, and collations directly in JavaScript. - sqliteai/sqlite-js
- DUDuck-UI – Browser-Based SQL IDE for DuckDB2025 · demo.duckui.com · ▲213
I built Duck-UI, a web-based SQL editor that runs DuckDB entirely in your browser via WebAssembly. No backend required. The Problem: Every time I needed to query csv, parquet, or even to play with SQL, I had to either: (a) spin up a Jupyter notebook (b) use the CLI (c) upload to a hosted service. Friction at every step (TOO MUCH to load a csv or even to test some sql (study)... The Solution: DuckDB's WASM runtime lets us run SQL analysis client-side. Load CSV/JSON/Parquet files from disk or URL, write SQL, get results instantly. Data stays on your machine. What It Does: SQL editor…
SQL workbench in the browser2024 · sql-workbench.com · ▲117Free browser-based SQL editor powered by DuckDB. Query and visualize CSV, JSON, Parquet and Arrow files locally or from remote URLs. No installation required.
More work this month
the category →
Endless lofi beats composed live in your browser, over pixel-art nights in Paris, Tokyo, New York, Hong Kong, Sydney, San Francisco and more. Free, no sign-up.
Work · 24d ago · loficities.com
Smooth Recorder▲257Mac screen recordings that look edited when you hit stop
Work · 18d ago · smoothrecorder.com


Work · 12d ago · readrare.com
Source: Show HN post ↗ · launch text quoted in part
Launched alongside, July 2021
the whole month →
Typedream▲1,426No-code site builder, easy as Notion, pretty as Webflow
Dev tools · 2021 · typedream.com


An 8-week founder program inspired by Product Hunt
Life & fun · 2021 · hyper.com

200+ open source alternatives to popular B2B tools
Dev tools · 2021 · btw.so

Het beste casino zonder vergunning voor Nederlandse spelers kiezen? Ontdek waar je op moet letten en hoe je een betrouwbaar platform vindt dat aansluit bij jouw voorkeuren.
Life & fun · 2021 · static.wiki
