mentat/query-translator
Nick Alexander d8d18a1731
[query] Handle SQL NULL for aggregates over 0 rows. (#684) (#688) r=rnewman
This uses a `SELECT *` from an inner subselect to filter potentially `NULL` aggregates.

The alternative is to handle `NULL` values throughout the projector, which is simple but loses a valuable invariant: Mentat SQL queries produce values that are not `NULL`.
2018-06-01 14:17:31 -07:00
..
src [query] Handle SQL NULL for aggregates over 0 rows. (#684) (#688) r=rnewman 2018-06-01 14:17:31 -07:00
tests [query] Handle SQL NULL for aggregates over 0 rows. (#684) (#688) r=rnewman 2018-06-01 14:17:31 -07:00
Cargo.toml Partial work from simple aggregates work (#497) r=nalexander 2017-11-30 15:02:07 -08:00
README.md Begin serializing queries to SQL. r=nalexander 2017-02-17 17:54:07 -08:00

This crate turns an algebrized Datalog query into a domain-specific representation of a SQL query, and then uses mentat_sql to turn that into a SQL string to be executed.

This subsumes both planning and query construction, because in Mentat the SQL query is effectively a query plan.