apache / apache/datafusion-sqlparser-rs

feat: Support IGNORE NULLS only for allowed aggregation functions

Offen
#1,206 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Rust
Sterne
3.5k
Forks
772
Ø Merge
4 T. 9 Std.
Gemergte PRs (30 T.)
17

Beschreibung

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

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne am Einstiegspunkt des SQL-Parsers, der IGNORE NULLS verarbeitet, und vergleiche die von ihm akzeptierten Funktionen mit der Liste der zulässigen Funktionen in der verknüpften SQL-2016-Grammatik. Reproduziere das Beispiel COUNT(*) und füge Tests hinzu, sodass nicht unterstützte Kombinationen fehlschlagen, während zulässige Aggregationsfunktionen weiterhin geparst werden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust, sql
Bereich
compilers
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.