diff --git a/src/dialect/snowflake.rs b/src/dialect/snowflake.rs index b356d7a4..706d5198 100644 --- a/src/dialect/snowflake.rs +++ b/src/dialect/snowflake.rs @@ -511,15 +511,7 @@ impl Dialect for SnowflakeDialect { fn is_table_factor(&self, kw: &Keyword, parser: &mut Parser) -> bool { match kw { - Keyword::LIMIT - if matches!( - parser.peek_token().token, - Token::Number(_, _) | Token::Placeholder(_) - ) => - { - false - } - + Keyword::LIMIT if peek_for_limit_options(parser) => false, _ => !RESERVED_KEYWORDS_FOR_TABLE_FACTOR.contains(kw), } } diff --git a/tests/sqlparser_snowflake.rs b/tests/sqlparser_snowflake.rs index 6362abe2..bd089ad7 100644 --- a/tests/sqlparser_snowflake.rs +++ b/tests/sqlparser_snowflake.rs @@ -4515,4 +4515,4 @@ fn test_snowflake_identifier_function() { snowflake().verified_stmt("GRANT ROLE IDENTIFIER('AAA') TO USER IDENTIFIER('AAA')"); snowflake().verified_stmt("REVOKE ROLE IDENTIFIER('AAA') FROM USER IDENTIFIER('AAA')"); -} \ No newline at end of file +}