Fix: GROUPING SETS accept values without parenthesis (#1867)

This commit is contained in:
Denys Tsomenko 2025-06-02 19:04:35 +03:00 committed by GitHub
parent 80d47eee84
commit 394a534486
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 39 additions and 1 deletions

View file

@ -10111,7 +10111,13 @@ impl<'a> Parser<'a> {
}
if self.parse_keywords(&[Keyword::GROUPING, Keyword::SETS]) {
self.expect_token(&Token::LParen)?;
let result = self.parse_comma_separated(|p| p.parse_tuple(true, true))?;
let result = self.parse_comma_separated(|p| {
if p.peek_token_ref().token == Token::LParen {
p.parse_tuple(true, true)
} else {
Ok(vec![p.parse_expr()?])
}
})?;
self.expect_token(&Token::RParen)?;
modifiers.push(GroupByWithModifier::GroupingSets(Expr::GroupingSets(
result,