In the beginning we had sqlish.go which was truly a horror and failed to implement anything useful of the sql standard.

Next we had sqlglot which was fantastic but, dear goodness it was slow.

$ SQLITE=false python scripts/sql.py "GROUP select type from __all__ group by type limit 1"
Created HASH in 1.811981201171875e-05


Executed query in 0.1616196632385254



wow! that’s… terrible!

Let’s replace it with sqlite in-memory:

$ SQLITE=true python scripts/sql.py "GROUP select type from __all__ group by type limit 1"

Created SQLITE3 DB in 0.006751537322998047

Executed query in 2.7418136596679688e-05


oh. yeah. that’s more like it. It takes far longer to create the database, but, it’s far, far, far faster to query which is worth a lot.

SQLish: again

Version d2be1cc261fb
Updated
Author avatar Helena Doc № PNMR-voc47HE2