Skip to content

Commit 5f4be68

Browse files
yoavcloudVedin
authored andcommitted
Do not parse ASOF and MATCH_CONDITION as table factor aliases (apache#1698)
1 parent 56f4b82 commit 5f4be68

File tree

2 files changed

+16
-0
lines changed

2 files changed

+16
-0
lines changed

src/keywords.rs

+2
Original file line numberDiff line numberDiff line change
@@ -1001,6 +1001,8 @@ pub const RESERVED_FOR_TABLE_ALIAS: &[Keyword] = &[
10011001
Keyword::ANTI,
10021002
Keyword::SEMI,
10031003
Keyword::RETURNING,
1004+
Keyword::ASOF,
1005+
Keyword::MATCH_CONDITION,
10041006
// for MSSQL-specific OUTER APPLY (seems reserved in most dialects)
10051007
Keyword::OUTER,
10061008
Keyword::SET,

tests/sqlparser_snowflake.rs

+14
Original file line numberDiff line numberDiff line change
@@ -2731,6 +2731,20 @@ fn asof_joins() {
27312731
"ON s.state = p.state ",
27322732
"ORDER BY s.observed",
27332733
));
2734+
2735+
// Test without explicit aliases
2736+
#[rustfmt::skip]
2737+
snowflake_and_generic().verified_query(concat!(
2738+
"SELECT * ",
2739+
"FROM snowtime ",
2740+
"ASOF JOIN raintime ",
2741+
"MATCH_CONDITION (snowtime.observed >= raintime.observed) ",
2742+
"ON snowtime.state = raintime.state ",
2743+
"ASOF JOIN preciptime ",
2744+
"MATCH_CONDITION (showtime.observed >= preciptime.observed) ",
2745+
"ON showtime.state = preciptime.state ",
2746+
"ORDER BY showtime.observed",
2747+
));
27342748
}
27352749

27362750
#[test]

0 commit comments

Comments
 (0)