コード例 #1
0
ファイル: stmt.cs プロジェクト: wangxiaoying/qpmodel
 public void VisitEachStatement(Action <SelectStmt> action)
 {
     if (IsLeaf())
     {
         action(stmt_);
     }
     else
     {
         left_.VisitEachStatement(action);
         right_.VisitEachStatement(action);
     }
 }
コード例 #2
0
ファイル: stmt.cs プロジェクト: wangxiaoying/qpmodel
 internal void ResolveOrdinals()
 {
     if (setops_ is null)
     {
         if (shallExpandSelection_)
         {
             selection_ = selectionRemoveSubquery(selection_);
         }
         logicPlan_.ResolveColumnOrdinal(selection_, parent_ != null);
     }
     else
     {
         // resolve each and use the first one to resolve ordinal since all are compatible
         var first = setops_.first_;
         setops_.VisitEachStatement(x =>
         {
             x.logicPlan_.ResolveColumnOrdinal(x.selection_, false);
         });
         logicPlan_.ResolveColumnOrdinal(first.selection_, parent_ != null);
     }
 }