HN Hall of Fame Weekly email

JSON with Sqlite

Screenshot of www.sqlite.org captured 2026-07-20
Page preview · captured 2026-07-20

Resurfaced independently across 5 calendar years, with breakout response in 3 of them.

submissions
5
submitters
5
observed span
2015–2024
peak thread · 70 comments
473 pts
latest 20+ return · 2023-08-10
193 pts

Submission timeline

2007–2026

One slot for every year since HN launched. Height is that year's peak points; orange marks a 100+ point or 50+ comment breakout. Select a bar to open its strongest thread.

First comments on top threads

HN comment order

I've been using the JSON1 extension for some time now (in production projects) and it's truly remarkable. I usually just dump the JSON-response data from an API to a "raw_data" table (typically one "updated_at" column and a second "json_data" one). At that point you can somehow normalize your schema, but only if you really have to! That is because you can get away with a NoSQL-like denormalized schema performance wise, by carefully defining index on expressions. You can somehow normalize…

fforflo·473-point thread·

It should be made clear that this functionality is not equivalent to the Postgres JSON support where you can create indexes based on the structure of the JSON. This is an extension to the query language that adds support for encoding/decoding within the context of a query: SELECT DISTINCT user.name FROM user, json_each(user.phone) WHERE json_each.value LIKE '704-%'; It's pretty neat considering they rolled it all on their own: https://www.sqlite.org/src/artifact/552a7d730863419e PS: If you haven't looked at the…

The cool thing for working with json is to store each json document as is in one column, then make virtual columns that store some specific information you want to query, using some combination of json_extract, then index those columns. This makes for super-fast search, and the best part is you don't have to choose what to index at insert time; you can always make more virtual columns when you need them. (You can still also search non-indexed, raw json…

bambax·193-point thread·

The first top-level comment from each of the four biggest threads, in HN’s own order. Excerpts are shortened; open a comment for full context.

Breakout years
3

100+ points or 50+ comments

Total points
980

reference only — not used in Hall rules or ranking

Total comments
190

reference only — not used in Hall rules or ranking

Every submission

DateTitle as submittedByPointsComments
2015-10-19SQLite now supports JSONandyjpb10
2017-02-03SQLITE: JSON1 ExtensionFirst breakoutashish0131170
2019-03-01JSON with SqliteBest threadausjke47368
2023-08-10SQLite Functions for Working with JSONLatest 20+ point returnmikece19352
2024-07-12SQLite: The JSON Blob Input BugHall inductionbrookst20