[Postgres]: `?` JSON operator cannot be parsed without a space after the field name

Abierto
#1,992 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
55/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
postgresql, rust

Línea de trabajo

Comienza ejecutando el ejemplo proporcionado de Parser::parse_sql con PostgreSqlDialect y compara las dos formas de consulta. Traza cómo el parser procesa ? junto al nombre del campo; después, añade cobertura para ambas formas de espaciado y confirma que el operador JSON de PostgreSQL se analiza sin provocar un panic.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

When using PostgreSqlDialect, the question mark cannot be parsed if it is not followed by a space, whereas postgres accepts the query. The following code panics when parsing broken:

fn main() {
    let broken = r#"SELECT user?'adress' FROM my_table"#;
    let working = r#"SELECT user? 'adress' FROM my_table"#;

    let working_parsed =
        sqlparser::parser::Parser::parse_sql(&sqlparser::dialect::PostgreSqlDialect {}, working)
            .expect("Failed to parse SQL query");
    println!("{:?}", working_parsed);

    let broken_parsed =
        sqlparser::parser::Parser::parse_sql(&sqlparser::dialect::PostgreSqlDialect {}, broken)
            .expect("Failed to parse SQL query");
    println!("{:?}", broken_parsed);
}
Lenguaje dominante
Rust
Estrellas
3.5k
Forks
774
Merge medio
3 d 4 h
PR fusionados (30 d)
19

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de apache/datafusion-sqlparser-rs

Todos los issues de apache/datafusion-sqlparser-rs

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.