apache / apache/datafusion-sqlparser-rs
ClickHouse dialect should not require interval qualifier
- Lingua principale
- Rust
- Stelle
- 3.5k
- Fork
- 772
- Merge medio
- 4g 9h
- PR unite (30g)
- 17
Descrizione
When the `require_interval_qualifier` dialect option was added (https://github.com/apache/datafusion-sqlparser-rs/pull/1398), the main concern was PostgreSQL. Modern clickhouse supports all of:
unquoted intervals
```
SELECT INTERVAL 1 DAY;
┌─toIntervalDay(1)─┐
1. │ 1 │
└──────────────────┘
```
quoted intervals
```
SELECT INTERVAL '1 d';
┌─toIntervalDay(1)─┐
1. │ 1 │
└──────────────────┘
```
Mixed intervals
```
SELECT INTERVAL '1 2:3:4' DAY TO SECOND;
┌─(toIntervalDay(1), toIntervalHour(2), toIntervalMinute(3), toIntervalSecond(4))─┐
1. │ (1,2,3,4) │
└─────────────────────────────────────────────────────────────────────────────────┘
```
---
The fix should be as simple as flipping one boolean [here](https://github.com/apache/datafusion-sqlparser-rs/blob/bf1741bee2acb8013660de21d314533fe5686e93/src/dialect/clickhouse.rs#L47-L49)
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Apri src/dialect/clickhouse.rs all'impostazione require_interval_qualifier ed esamina il booleano esistente. Modifica questa impostazione in modo che ClickHouse accetti intervalli non racchiusi tra virgolette, racchiusi tra virgolette e misti, come mostrato nell'issue; il lavoro è completato quando questi tre esempi non richiedono più un qualificatore di intervallo.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- clickhouse, rust
- Ambito
- databases
- Tipo di issue
- Bug
- Difficoltà
- 1/5
- Tempo stimato
- Meno di un'ora
- Stato di attività
- Tranquilla
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 88/100