docs / json
On this page
JSON
JSON is a first-class column. The stored form is binary NSJB, not UTF-8 text. Insert a JSON string; the engine parses it.
Path extract
column.part.part. A numeric part indexes an array (tags.0). A missing path is SQL NULL. Scalars become STRING, BOOL, or DECIMAL; nested objects and arrays stay JSON.
Equality, range, BETWEEN, and IS NULL on a path index are sargable. EXPLAIN shows IndexScan … json.
Limits
These fail closed:
JSON cannot be a foreign-key column. Path indexes cannot be UNIQUE full-text or vector indexes.
See also the engine note `docs/json.md` in the repository.