* after over clause, named window can be parsed with window ... as after having clause
* Lint errors are fixed
* Support for multiple windows
* fix lint errors
* simplifications
* rename function
* Rewrite named window search in functional style
* Test added and some minor changes
* Minor changes on tests and namings, and semantic check is removed
---------
Co-authored-by: Mustafa Akur <mustafa.akur@synnada.ai>
Co-authored-by: Mehmet Ozan Kabak <ozankabak@gmail.com>
* Fix table alias parsing regression
* Revert "Support redshift's columns definition list for system information functions (#769)"
This reverts commit c35dcc93a7.
* parsing of redshift's column definition list for
pg_get_late_binding_view_cols
pg_get_cols
pg_get_grantee_by_iam_role
pg_get_iam_role_by_user
* Renamed ColsDefinition to TableAliasDefinition
added generic dialect
* Tests fixed
* Visitor for IdentPair
* Parsing redshift table alias based on indentifier and
parentheses instead of function name
* fix clippy
---------
Co-authored-by: Maciej Skrzypkowski <maciej.skrzypkowski@satoricyber.com>
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
postgres supports a bunch more json operators. See
https://www.postgresql.org/docs/15/functions-json.html
Skipping operators starting with a question mark for now, since those
are hard to distinguish from placeholders without more context.
Postgres supports more generalized locking clauses, for example:
FOR UPDATE OF <table_name> SKIP LOCKED
also, multiple locking clauses. Generalize the parser to support these.
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* support basic pg CREATE FUNCTION
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* support function argument
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* fix display and use verify in test
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* support OR REPLACE
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* fix compile error in bigdecimal
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* unify all `CreateFunctionBody` to a structure
Signed-off-by: Runji Wang <wangrunji0408@163.com>
Signed-off-by: Runji Wang <wangrunji0408@163.com>
* Adapt VALUES to MySQL dialect
* Update src/ast/query.rs
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* remove *requirement* for ROW
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* Apply UPDATE SET FROM statement for some dialects
* Add GenericDialect to support
* Test SnowflakeDialect
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
* Update SetOperation field all to op_option
* Implement parse_set_operator_option
cargo fmt
Fix parse_set_operator_option after next_token
* Add test for parsing union distinct
* Rename to SetQualifier and fix fmt space
* Add None to SetQualifier
* Update parse method
* Rename to SetQuantifier
* Rename parse_set_operator_option parse_set_operator
* Fix test to parse union, except, intersect
* Add some comments to SetQuantifier
* Fix comment