phpmyadmin / phpmyadmin/sql-parser
Condition could have more detailed fields
Personne n'a encore pris cette issue.
- Langage dominant
- PHP
- Étoiles
- 485
- Forks
- 119
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
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
]
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par localiser les instances de Condition du parser et le champ expr existant. Comparez les exemples demandés c.id = 2 et customer.address_id IS NOT NULL, puis définissez quelles informations structurées sur l’opérateur et l’opérande doivent être exposées ; le travail est terminé lorsque les conditions fournissent ces détails au lieu de seulement une chaîne de caractères.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- php, sql
- Domaine
- compilers
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 30/100