Skip to content

Commit 0412897

Browse files
feat: implement a few missing expressions
Signed-off-by: Andreas Reichel <[email protected]>
1 parent beb68d5 commit 0412897

File tree

1 file changed

+33
-4
lines changed

1 file changed

+33
-4
lines changed

src/main/java/net/sf/jsqlparser/util/TablesNamesFinder.java

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@
146146
import net.sf.jsqlparser.statement.select.FromItemVisitor;
147147
import net.sf.jsqlparser.statement.select.Join;
148148
import net.sf.jsqlparser.statement.select.LateralSubSelect;
149+
import net.sf.jsqlparser.statement.select.OrderByElement;
149150
import net.sf.jsqlparser.statement.select.ParenthesedFromItem;
150151
import net.sf.jsqlparser.statement.select.ParenthesedSelect;
151152
import net.sf.jsqlparser.statement.select.PlainSelect;
@@ -620,7 +621,29 @@ public void visit(Modulo modulo) {
620621

621622
@Override
622623
public void visit(AnalyticExpression analytic) {
624+
if (analytic.getExpression() != null) {
625+
analytic.getExpression().accept(this);
626+
}
627+
if (analytic.getDefaultValue() != null) {
628+
analytic.getDefaultValue().accept(this);
629+
}
630+
if (analytic.getOffset() != null) {
631+
analytic.getOffset().accept(this);
632+
}
633+
if (analytic.getKeep() != null) {
634+
analytic.getKeep().accept(this);
635+
}
636+
if (analytic.getFuncOrderBy() != null) {
637+
for (OrderByElement element : analytic.getOrderByElements()) {
638+
element.getExpression().accept(this);
639+
}
640+
}
623641

642+
if (analytic.getWindowElement() != null) {
643+
analytic.getWindowElement().getRange().getStart().getExpression().accept(this);
644+
analytic.getWindowElement().getRange().getEnd().getExpression().accept(this);
645+
analytic.getWindowElement().getOffset().getExpression().accept(this);
646+
}
624647
}
625648

626649
@Override
@@ -638,7 +661,9 @@ public void visit(SetOperationList list) {
638661

639662
@Override
640663
public void visit(ExtractExpression eexpr) {
641-
664+
if (eexpr.getExpression() != null) {
665+
eexpr.getExpression().accept(this);
666+
}
642667
}
643668

644669
@Override
@@ -662,7 +687,9 @@ protected void init(boolean allowColumnProcessing) {
662687

663688
@Override
664689
public void visit(IntervalExpression iexpr) {
665-
690+
if (iexpr.getExpression() != null) {
691+
iexpr.getExpression().accept(this);
692+
}
666693
}
667694

668695
@Override
@@ -688,12 +715,14 @@ public void visit(RegExpMatchOperator rexpr) {
688715

689716
@Override
690717
public void visit(JsonExpression jsonExpr) {
691-
718+
if (jsonExpr.getExpression() != null) {
719+
jsonExpr.getExpression().accept(this);
720+
}
692721
}
693722

694723
@Override
695724
public void visit(JsonOperator jsonExpr) {
696-
725+
visitBinaryExpression(jsonExpr);
697726
}
698727

699728
@Override

0 commit comments

Comments
 (0)