Support expressions in LIMIT/OFFSET (#567)

This commit is contained in:
Alex Qyoun-ae 2022-08-11 14:50:18 +04:00 committed by GitHub
parent a9db6ed139
commit 8176561100
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 39 additions and 2 deletions

View file

@ -4421,13 +4421,13 @@ impl<'a> Parser<'a> {
if self.parse_keyword(Keyword::ALL) {
Ok(None)
} else {
Ok(Some(Expr::Value(self.parse_number_value()?)))
Ok(Some(self.parse_expr()?))
}
}
/// Parse an OFFSET clause
pub fn parse_offset(&mut self) -> Result<Offset, ParserError> {
let value = Expr::Value(self.parse_number_value()?);
let value = self.parse_expr()?;
let rows = if self.parse_keyword(Keyword::ROW) {
OffsetRows::Row
} else if self.parse_keyword(Keyword::ROWS) {