apache / apache/datafusion-sqlparser-rs
ClickHouse dialect should not require interval qualifier
- Langage dominant
- Rust
- Étoiles
- 3.5k
- Forks
- 772
- Merge moyen
- 4 j 9 h
- PR mergées (30 j)
- 17
Description
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)
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Ouvrez src/dialect/clickhouse.rs au niveau du paramètre require_interval_qualifier et examinez le booléen existant. Ajustez ce paramètre afin que ClickHouse accepte les intervalles non entourés de guillemets, entourés de guillemets et mixtes, comme indiqué dans l’issue ; le travail est terminé lorsque ces trois exemples ne nécessitent plus de qualificateur d’intervalle.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- clickhouse, rust
- Domaine
- databases
- Type d'issue
- Bug
- Difficulté
- 1/5
- Temps estimé
- Moins d'une heure
- Activité
- Calme
- Clarté
- Clairement spécifiée
- Accessibilité débutants
- 88/100