graphql-engine/v3/crates/sql
Vamshi Surabhi a33dc2e1a7 PACHA-82 sql: support empty arguments when arguments are all nullable (#1095)
<!-- The PR description should answer 2 important questions: -->

### What

We support `fn()` syntax when all arguments are nullable.

### How

Checks if all the arguments are nullable and handles this case. There
are bunch of unit tests added.

V3_GIT_ORIGIN_REV_ID: 65c3eff6200930474bc479b27666b77e4c648b49
2024-09-11 03:42:53 +00:00
..
src PACHA-82 sql: support empty arguments when arguments are all nullable (#1095) 2024-09-11 03:42:53 +00:00
Cargo.toml [PACHA-18] sql: forward request headers to connectors (#1036) 2024-08-29 19:56:54 +00:00
readme.md Refactor SQL layer to use OpenDD query IR (#925) 2024-08-05 23:38:19 +00:00

SQL Interface

An experimental SQL interface over OpenDD models. This is mostly targeted at AI use cases for now - GenAI models are better at generating SQL queries than GraphQL queries.

This is implemented using the Apache DataFusion Query Engine by deriving the SQL metadata for datafusion from Open DDS metadata. As the implementation currently stands, once we get a LogicalPlan from datafusion we replace TableScans with NDC queries to the underlying connector. There is a rudimentary optimizer that pushes down projections to the opendd query so that we don't fetch all the columns of a collection.