apache / apache/datafusion-sqlparser-rs
ClickHouse dialect should not require interval qualifier
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Rust
- Estrelas
- 3.5k
- Forks
- 774
- Merge médio
- 4d 9h
- PRs com merge (30d)
- 17
Descrição
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)
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Abra src/dialect/clickhouse.rs na configuração require_interval_qualifier e inspecione o booleano existente. Ajuste essa configuração para que o ClickHouse aceite intervalos sem aspas, entre aspas e mistos, conforme mostrado na issue; considera-se concluído quando esses três exemplos não exigirem mais um qualificador de intervalo.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- clickhouse, rust
- Domínio
- databases
- Tipo de issue
- Bug
- Dificuldade
- 1/5
- Tempo estimado
- Menos de uma hora
- Status de atividade
- Pouca atividade
- Clareza
- Claramente especificada
- Facilidade para iniciantes
- 88/100