phpmyadmin / phpmyadmin/sql-parser

Condition could have more detailed fields

Abierto
#357 1 comentario 5 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

enhancement
Lenguaje dominante
PHP
Estrellas
485
Forks
119
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Currently, when I parse a query, I get WHERE as Condition instances. These have an expr field, which is just a string and not very useful when analyzing a query. It would be really nice if we could be able to get more detail from that, like the operator, operands, etc.

Examples:

// c.id = 2
[
    leftOperand: ColumnReference [ column: 'id', tableAlias: 'c' ] ,
    operator: Equals []
    rightOperand: Constant [ value: 2 ]
]
// customer.address_id IS NOT NULL
[
    leftOperand: ColumnReference [ column: 'address_id', tableName: 'customer' ] ,
    operator: IsNotNull
    rightOperand: null
]

Guía de contribución

Abrir la guía de contribución

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.

Línea de trabajo

Comienza localizando las instancias de Condition del parser y el campo expr existente. Compara los ejemplos solicitados c.id = 2 y customer.address_id IS NOT NULL y, a continuación, define qué información estructurada sobre el operador y el operando debe exponerse; el trabajo estará terminado cuando las condiciones proporcionen ese detalle en lugar de solo una cadena.

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

Evaluación

Stack tecnológico
php, sql
Área
compilers
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
30/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.