apache / apache/datafusion-sqlparser-rs

feat: Support IGNORE NULLS only for allowed aggregation functions

Open
#1,206 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
3.5k
Forks
772
Avg merge
4d 9h
Merged PRs (30d)
17

Description

Currently parser allows to parse queries which IMHO should be failing by unsupported syntax.
Like
`SELECT COUNT(*) IGNORE NULLS FROM (values (1), (null), (2));`

The allowed list for IGNORE NULLS can be found https://github.com/ronsavage/SQL/blob/master/sql-2016.ebnf

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in the SQL parser entry point that handles IGNORE NULLS and compare its accepted functions with the allowed list in the linked SQL-2016 grammar. Reproduce the COUNT(*) example and add coverage so unsupported combinations fail while allowed aggregation functions continue to parse.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, sql
Domain
compilers
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.