Snowflake: Improve accuracy of lookahead in implicit LIMIT alias (#1941)

This commit is contained in:
Yoav Cohen 2025-07-17 11:08:47 +03:00 committed by GitHub
parent 4d9338638f
commit 92db20673b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 45 additions and 11 deletions

View file

@ -3535,6 +3535,15 @@ fn test_sql_keywords_as_select_item_aliases() {
.parse_sql_statements(&format!("SELECT 1 {kw}"))
.is_err());
}
// LIMIT is alias
snowflake().one_statement_parses_to("SELECT 1 LIMIT", "SELECT 1 AS LIMIT");
// LIMIT is not an alias
snowflake().verified_stmt("SELECT 1 LIMIT 1");
snowflake().verified_stmt("SELECT 1 LIMIT $1");
snowflake().verified_stmt("SELECT 1 LIMIT ''");
snowflake().verified_stmt("SELECT 1 LIMIT NULL");
snowflake().verified_stmt("SELECT 1 LIMIT $$$$");
}
#[test]
@ -3586,6 +3595,15 @@ fn test_sql_keywords_as_table_aliases() {
.parse_sql_statements(&format!("SELECT * FROM tbl {kw}"))
.is_err());
}
// LIMIT is alias
snowflake().one_statement_parses_to("SELECT * FROM tbl LIMIT", "SELECT * FROM tbl AS LIMIT");
// LIMIT is not an alias
snowflake().verified_stmt("SELECT * FROM tbl LIMIT 1");
snowflake().verified_stmt("SELECT * FROM tbl LIMIT $1");
snowflake().verified_stmt("SELECT * FROM tbl LIMIT ''");
snowflake().verified_stmt("SELECT * FROM tbl LIMIT NULL");
snowflake().verified_stmt("SELECT * FROM tbl LIMIT $$$$");
}
#[test]