Skip to content

Commit 70243d7

Browse files
committed
feat: Allow expressions in LIMIT
1 parent b1a4556 commit 70243d7

2 files changed

Lines changed: 8 additions & 1 deletion

File tree

src/parser.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4243,7 +4243,7 @@ impl<'a> Parser<'a> {
42434243
if self.parse_keyword(Keyword::ALL) {
42444244
Ok(None)
42454245
} else {
4246-
Ok(Some(Expr::Value(self.parse_number_value()?)))
4246+
Ok(Some(self.parse_expr()?))
42474247
}
42484248
}
42494249

tests/sqlparser_common.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4614,6 +4614,13 @@ fn test_placeholder() {
46144614
right: Box::new(Expr::Value(Value::Placeholder("$Id1".into())))
46154615
})
46164616
);
4617+
4618+
let sql = "SELECT * FROM student LIMIT $1";
4619+
let ast = dialects.verified_query(sql);
4620+
assert_eq!(
4621+
ast.limit,
4622+
Some(Expr::Value(Value::Placeholder("$1".into())))
4623+
);
46174624
}
46184625

46194626
#[test]

0 commit comments

Comments
 (0)