sql_parser_project

Crates.iosql_parser_project
lib.rssql_parser_project
version0.1.0
sourcesrc
created_at2024-11-14 02:49:34.947879
updated_at2024-11-14 02:49:34.947879
descriptionThis is a simple project to parse SQL queries using pest crate. Currently parser supports simple select queries whith where conditions.
homepage
repository
max_upload_size
id1447361
size190,395
(vanyatemno)

documentation

README

SQL Parser Project

This is a simple project to parse SQL queries using pest crate.
Currently parser supports simple select queries whith where conditions.

Project Description

The SQL Query Parser extracts from a basic SQL query:

  • Table Name: The table from which data is selected.
  • Columns: List of columns specified in the query.

Technical overview

Created parser processes PSQL-like select statements with multiple columns selections and where statements. Column and table names have to be encased in double quotes, while string values have to be encased in single quotes. Reserved keywords have to

There are main grammar rules used:

  • query: Matches the full SQL SELECT statement.
  • columns: Parses a comma-separated list of columns.
  • from_clause: Parses the FROM TABLE part of statement.
  • where_clause: Parses the WHERE CONDITION part of statement.
  • identifier: Parses the name of a column or table.

Example Usage

cargo run test-query.txt

Example query

SELECT "column1" FROM "table" WHERE "column1" = 5 AND "column2" = 'value';

Example output

Selected table: "table"
Selected columns: "column1"
Conditions:
  Column: "column1", Operator: =, Value: 5
   AND 
  Column: "column2", Operator: =, Value: 'value'

Commit count: 0

cargo fmt