Feature Matrix
This matrix is derived from the current native PostgreSQL and ClickHouse implementations. Status values are intentionally simple:
- Supported: the checked native subset is available.
- Partial or gated: the surface or its proof is intentionally bounded.
- Unsupported: the native implementation does not provide it.
- Not applicable: the feature does not make sense for that direction.
Dialect boundary
Read the matrix as a planning guide, not a promise that every vendor-specific SQL feature is abstracted. BtrQL favors explicit dialect errors over generating SQL that only looks portable.
PostgreSQL
Native compiler for PostgreSQL 16–18. Project compilation and incremental LSP are implemented; reverse is a bounded full-profile subset, while full debugger execution and post-compile hooks remain gaps.
Compiler and project
| Feature | BtrQL syntax | Examples | Support | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
Native parse, check, lower, render
Tree-sitter source mapping, typed model, semantic checks, and native dialect rendering. |
|
|
|||||||
|
Mixed projects and incremental builds
Compiles.btrql and.sql modules with dependency invalidation, source overrides, and relative outputs. |
|
|
|||||||
|
Values, modules, extensions, and declared shapes
Reusable compile-time source and typed project symbols. |
|
|
Query and dialect surface
| Feature | BtrQL syntax | Examples | Support | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
Joins, CTEs, grouping, windows, and set operations
The shared promoted query-composition subset. |
|
|
|||||||
|
PostgreSQL versioned forms
DISTINCT ON, ROWS FROM WITH ORDINALITY, JSON_TABLE, RETURNING WITH, and temporal-key forms in their checked versions. |
|
No example yet
|
|
||||||
|
DML, schema objects, and routines
PostgreSQL has the broader promoted authoring surface; ClickHouse is intentionally narrower. |
|
|
Tooling and known gaps
| Feature | BtrQL syntax | Examples | Support | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
Incremental LSP and navigation
Ranged document sync is implemented; navigation is strongest in the active document and is not rename-complete across the workspace. |
|
No example yet
|
|
||||||
|
Trace and debugger runtime
Full-profile custom LSP/MCP endpoints exist, but the native CLI has no trace/debug commands and no general transaction/savepoint runtime. |
|
No example yet
|
|
||||||
|
Post-compile project hooks
Missing in the native implementation. PostgreSQL is planned first; ClickHouse is outside the initial scope. |
|
No example yet
|
|
ClickHouse
Native compiler targeting ClickHouse 24.8, including native query clauses and types. Reverse/editor support is bounded; routines, broad lifecycle DDL, post-compile hooks, and the final long soak are not promoted.
Compiler and project
| Feature | BtrQL syntax | Examples | Support | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
Native parse, check, lower, render
Tree-sitter source mapping, typed model, semantic checks, and native dialect rendering. |
|
|
|||||||
|
Mixed projects and incremental builds
Compiles.btrql and.sql modules with dependency invalidation, source overrides, and relative outputs. |
|
|
|||||||
|
Values, modules, extensions, and declared shapes
Reusable compile-time source and typed project symbols. |
|
|
Query and dialect surface
| Feature | BtrQL syntax | Examples | Support | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
Joins, CTEs, grouping, windows, and set operations
The shared promoted query-composition subset. |
|
|
|||||||
|
ClickHouse native query clauses and types
PREWHERE, ARRAY JOIN, SAMPLE, LIMIT BY, SETTINGS, FORMAT, declared native types, and table functions. |
|
No example yet
|
|
||||||
|
DML, schema objects, and routines
PostgreSQL has the broader promoted authoring surface; ClickHouse is intentionally narrower. |
|
|
Tooling and known gaps
| Feature | BtrQL syntax | Examples | Support | ||||||
|---|---|---|---|---|---|---|---|---|---|
|
Incremental LSP and navigation
Ranged document sync is implemented; navigation is strongest in the active document and is not rename-complete across the workspace. |
|
No example yet
|
|
||||||
|
Trace and debugger runtime
Full-profile custom LSP/MCP endpoints exist, but the native CLI has no trace/debug commands and no general transaction/savepoint runtime. |
|
No example yet
|
|
||||||
|
Post-compile project hooks
Missing in the native implementation. PostgreSQL is planned first; ClickHouse is outside the initial scope. |
|
No example yet
|
|