Named window frames (#881)

* 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>
This commit is contained in:
Berkay Şahin 2023-05-18 22:00:24 +03:00 committed by GitHub
parent 1b86abebe2
commit ef46cd3752
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 225 additions and 37 deletions

View file

@ -460,6 +460,7 @@ fn parse_quote_identifiers_2() {
distribute_by: vec![],
sort_by: vec![],
having: None,
named_window: vec![],
qualify: None
}))),
order_by: vec![],
@ -494,6 +495,7 @@ fn parse_quote_identifiers_3() {
distribute_by: vec![],
sort_by: vec![],
having: None,
named_window: vec![],
qualify: None
}))),
order_by: vec![],
@ -884,6 +886,7 @@ fn parse_select_with_numeric_prefix_column_name() {
distribute_by: vec![],
sort_by: vec![],
having: None,
named_window: vec![],
qualify: None,
})))
);
@ -927,6 +930,7 @@ fn parse_select_with_concatenation_of_exp_number_and_numeric_prefix_column() {
distribute_by: vec![],
sort_by: vec![],
having: None,
named_window: vec![],
qualify: None,
})))
);
@ -1116,6 +1120,7 @@ fn parse_substring_in_select() {
distribute_by: vec![],
sort_by: vec![],
having: None,
named_window: vec![],
qualify: None
}))),
order_by: vec![],
@ -1394,6 +1399,7 @@ fn parse_hex_string_introducer() {
distribute_by: vec![],
sort_by: vec![],
having: None,
named_window: vec![],
qualify: None,
into: None
}))),