anchor.diff:                  yield! this.TableExprScope(dict, join.LeftTable)
                   yield! this.TableExprScope(dict, join.RightTable)
               }
  +
       member private this.TableExprScope(texpr : TableExpr) =
           let dict = Dictionary()
           { FromVariables = dict; FromObjects = this.TableExprScope(dict, texpr) |> ResizeArray }
  
positive.code:             Name = name
              As =
                  match createTable.As with
                  | CreateAsSelect select -> CreateAsSelect <| this.Select(select)
                  | CreateAsDefinition def -> CreateAsDefinition <| this.CreateTableDefinition(name, def)
          }
      member this.CreateView(createView : CreateViewStmt) =
          {   Temporary = createView.Temporary
              ViewName = this.ObjectName(createView.ViewName, true)
              ColumnNames = createView.ColumnNames
              AsSelect = this.Select(createView.AsSelect)
          }
      member this.QualifiedTableName(qualified : QualifiedTableName) =
          {   TableName = this.ObjectName(qualified.TableName)
  
negative.code:                 match implicitAlias (expr.Value, alias) with
                  | None -> Column (expr, None) |> Seq.singleton
                  | Some a -> Column (expr, Some (prefix + a)) |> Seq.singleton
                                       
      member this.ResultColumns(resultColumns : ResultColumns, knownShape : InferredQueryShape option) =
          let columns =
              resultColumns.Columns
  