Skip to content

Extension reference

Generated from each package’s Go doc comments — the same content as pkg.go.dev, rendered here alongside the rest of the docs.

PackageSummary
arrayPackage array provides the array table-valued SQL function — a way to feed a Go slice into a SQL query as a single-column table.
blobioPackage blobio exposes SQLite’s incremental BLOB I/O API as SQL scalar functions, so callers can stream parts of large BLOBs from SQL without materializing the whole row into memory.
bloomPackage bloom provides a Bloom filter virtual table — a space-efficient probabilistic structure for set-membership testing.
closurePackage closure implements the transitive_closure virtual table: a parent-child graph walker that returns every descendant of a given node, with optional depth bounds.
csvPackage csv exposes RFC 4180 comma-separated values as a SQLite virtual table.
decimalPackage decimal adds exact base-10 arithmetic scalar functions, for workloads where binary floating point’s rounding is unacceptable (money, tax, billing).
encodePackage encode adds encode(data, format) and decode(text, format) scalar functions covering the common binary-to-text codecs SQLite lacks (only hex/quote are built in):
evalPackage eval adds an eval() scalar function that runs dynamic SQL on the calling connection and returns the result as text — sqlean’s distinctive “SQL from SQL” capability, which no other pure-Go SQLite driver exposes.
fileioPackage fileio exposes SQL functions and a virtual table for reading and walking files.
fuzzyPackage fuzzy adds approximate-string-matching SQL scalar functions — edit distances, the Jaro / Jaro-Winkler similarity, and the Soundex phonetic code:
hashPackage hash provides cryptographic hash SQL functions.
ipaddrPackage ipaddr provides typed IP / CIDR helper functions for SQL queries.
linesPackage lines exposes a text file as a SQLite virtual table — one row per line.
moneyPackage money adds fixed-point currency scalar functions over the same exact base-10 backend as ext/decimal.
pivotPackage pivot implements a pivot virtual table — a parametrized cross-tab over three caller-supplied SELECT statements:
regexpPackage regexp provides Go-regexp-syntax SQL functions plus the binary REGEXP operator SQLite leaves unimplemented by default.
rtreePackage rtree adds ready-made custom geometry callbacks for SQLite’s built-in R-Tree module, layered on [gosqlite.org.Conn.RegisterRTreeGeometry].
seriesPackage series implements the generate_series table-valued function — an eponymous virtual table that yields a sequence of integers:
spellfix1Package spellfix1 implements a fuzzy-text-matching virtual table inspired by SQLite’s spellfix1 extension.
statementPackage statement implements a virtual table that turns any SQL statement into a parametrized view.
statsPackage stats provides PostgreSQL-style statistical aggregate and window functions plus two scalar helpers.
textPackage text adds Unicode-aware string scalar functions that SQLite’s built-ins and ext/unicode don’t cover:
timePackage timeext adds Go-time-backed scalar functions that go beyond SQLite’s built-in datetime(): duration arithmetic with Go duration syntax, field extraction, truncation, and unix conversions.
unicodePackage unicode provides Unicode-aware string SQL functions and collations as an alternative to the SQLite ICU extension.
uuidPackage uuid provides RFC 4122 UUID SQL functions backed by github.com/google/uuid.
zorderPackage zorder provides z-order curve helpers for mapping multi-dimensional integer coordinates to a single ordered scalar (Morton encoding).