Skip to content

Commit 686599b

Browse files
committed
fixes #1055 - added simple jdbc parameter to interval expression
1 parent f9924d5 commit 686599b

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3387,7 +3387,7 @@ IntervalExpression IntervalExpression() : {
33873387
{
33883388

33893389
{ interval = new IntervalExpression(); }
3390-
<K_INTERVAL> ["-" {signed=true;}] (token=<S_LONG> | token=<S_DOUBLE> | token=<S_CHAR_LITERAL> | expr = Column() | expr = JdbcNamedParameter() )
3390+
<K_INTERVAL> ["-" {signed=true;}] (token=<S_LONG> | token=<S_DOUBLE> | token=<S_CHAR_LITERAL> | expr = Column() | expr = JdbcNamedParameter() | expr = SimpleJdbcParameter() )
33913391
{
33923392
if (expr != null) {
33933393
if (signed) expr = new SignedExpression('-', expr);

src/test/java/net/sf/jsqlparser/statement/select/SelectTest.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4296,4 +4296,14 @@ public void testKeyWordExceptIssue1040() throws JSQLParserException {
42964296
public void testKeyWordExceptIssue1044() throws JSQLParserException {
42974297
assertSqlCanBeParsedAndDeparsed("SELECT SP_ID FROM ST_PR WHERE INSTR(',' || SP_OFF || ',', ',' || ? || ',') > 0");
42984298
}
4299+
4300+
@Test
4301+
public void testKeyWordExceptIssue1055() throws JSQLParserException {
4302+
assertSqlCanBeParsedAndDeparsed("SELECT INTERVAL ? DAY");
4303+
}
4304+
4305+
@Test
4306+
public void testKeyWordExceptIssue1055_2() throws JSQLParserException {
4307+
assertSqlCanBeParsedAndDeparsed("SELECT * FROM mytable WHERE A.end_time > now() AND A.end_time <= date_add(now(), INTERVAL ? DAY)");
4308+
}
42994309
}

0 commit comments

Comments
 (0)