@Override
 public void visit(SubJoin subJoin) {
   FromItem left = subJoin.getLeft();
   FromItem right = subJoin.getJoin().getRightItem();
   FromItemVisitorImpl leftVisitor = new FromItemVisitorImpl(where);
   FromItemVisitorImpl rightVisitor = new FromItemVisitorImpl(where);
   left.accept(leftVisitor);
   right.accept(rightVisitor);
   relationProvider = PlanFactory.getInstance().newJoin();
   ((Join) relationProvider)
       .setInput(leftVisitor.getRelationProvider(), rightVisitor.getRelationProvider());
 }