Skip to content

Commit c399549

Browse files
committed
fixes #120
1 parent a0d8733 commit c399549

File tree

3 files changed

+16
-4
lines changed

3 files changed

+16
-4
lines changed

src/main/javacc/net/sf/jsqlparser/parser/JSqlParserCC.jj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,7 @@ String RelObjectName():
520520
| tk=<K_LAST> | tk=<K_MATERIALIZED> | tk=<K_NULLS> | tk=<K_PARTITION> | tk=<K_RANGE>
521521
| tk=<K_ROW> | tk=<K_ROWS> | tk=<K_SIBLINGS> | tk=<K_VALUE> | tk=<K_XML>
522522
| tk=<K_COLUMN> | tk=<K_REPLACE> | tk=<K_TRUNCATE> | tk=<K_KEY> | tk=<K_ANY>
523-
| tk=<K_OPEN>
523+
| tk=<K_OPEN> | tk=<K_OVER>
524524
)
525525

526526
{ return tk.image; }
@@ -1756,7 +1756,7 @@ Expression PrimaryExpression():
17561756

17571757
| LOOKAHEAD(["+" | "-"] Column()) [sign="+" | sign="-"] retval=Column()
17581758

1759-
| LOOKAHEAD(2) [sign="+" | sign="-"] "(" retval=PrimaryExpression() ")" {retval = new Parenthesis(retval); }
1759+
| LOOKAHEAD(3) [sign="+" | sign="-"] "(" retval=BitwiseAndOr() ")" {retval = new Parenthesis(retval); }
17601760

17611761
| [sign="+" | sign="-"] "(" retval=SubSelect() ")"
17621762

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

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1678,7 +1678,19 @@ public void testSelectNumericBind() throws JSQLParserException {
16781678
assertSqlCanBeParsedAndDeparsed("SELECT a FROM b WHERE c = :1");
16791679
}
16801680

1681-
public void testSelectBracketsTest() throws JSQLParserException {
1681+
public void testSelectBrackets() throws JSQLParserException {
16821682
assertSqlCanBeParsedAndDeparsed("SELECT avg((123.250)::numeric)");
16831683
}
1684+
1685+
public void testSelectBrackets2() throws JSQLParserException {
1686+
assertSqlCanBeParsedAndDeparsed("SELECT (EXTRACT(epoch FROM age(d1, d2)) / 2)::numeric");
1687+
}
1688+
1689+
public void testSelectBrackets3() throws JSQLParserException {
1690+
assertSqlCanBeParsedAndDeparsed("SELECT avg((EXTRACT(epoch FROM age(d1, d2)) / 2)::numeric)");
1691+
}
1692+
1693+
public void testSelectBrackets4() throws JSQLParserException {
1694+
assertSqlCanBeParsedAndDeparsed("SELECT (1 / 2)::numeric");
1695+
}
16841696
}

src/test/java/net/sf/jsqlparser/test/select/SpecialOracleTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public void testAllSqlsParseDeparse() throws IOException {
6868
}
6969

7070
LOG.log(Level.INFO, "tested {0} files. got {1} correct parse results", new Object[]{count, success});
71-
assertTrue(success>=112);
71+
assertTrue(success>=113);
7272
}
7373

7474
@Test

0 commit comments

Comments
 (0)