recursive select calls are parsed with bad trailing_commas parameter (#1521)

This commit is contained in:
tomershaniii 2024-11-23 13:33:14 +02:00 committed by GitHub
parent a1150223af
commit 10519003ed
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 44 additions and 12 deletions

View file

@ -2846,3 +2846,20 @@ fn test_parse_show_columns_sql() {
snowflake().verified_stmt("SHOW COLUMNS IN TABLE abc");
snowflake().verified_stmt("SHOW COLUMNS LIKE '%xyz%' IN TABLE abc");
}
#[test]
fn test_projection_with_nested_trailing_commas() {
let sql = "SELECT a, FROM b, LATERAL FLATTEN(input => events)";
let _ = snowflake().parse_sql_statements(sql).unwrap();
//Single nesting
let sql = "SELECT (SELECT a, FROM b, LATERAL FLATTEN(input => events))";
let _ = snowflake().parse_sql_statements(sql).unwrap();
//Double nesting
let sql = "SELECT (SELECT (SELECT a, FROM b, LATERAL FLATTEN(input => events)))";
let _ = snowflake().parse_sql_statements(sql).unwrap();
let sql = "SELECT a, b, FROM c, (SELECT d, e, FROM f, LATERAL FLATTEN(input => events))";
let _ = snowflake().parse_sql_statements(sql).unwrap();
}