public override UnionClause VisitUnion(UnionClause clause) { contexts.Push(new Context()); var result = base.VisitUnion(clause); contexts.Pop(); return(result); }
protected PostgresQueryBase(IServiceProvider serviceProvider) : base(serviceProvider) { fromClause = serviceProvider.GetRequiredService <FromClause>(); joinClause = serviceProvider.GetRequiredService <JoinClause>(); whereClause = serviceProvider.GetRequiredService <WhereClause>(); groupByClause = serviceProvider.GetRequiredService <GroupByClause>(); havingClause = serviceProvider.GetRequiredService <HavingClause>(); unionClause = serviceProvider.GetRequiredService <UnionClause>(); orderByClause = serviceProvider.GetRequiredService <OrderByClause>(); }
public SqlServerQueryBase(IServiceProvider serviceProvider) : base(serviceProvider) { fromClause = serviceProvider.GetRequiredService <FromClause>(); joinClause = serviceProvider.GetRequiredService <JoinClause>(); whereClause = serviceProvider.GetRequiredService <WhereClause>(); groupByClause = serviceProvider.GetRequiredService <GroupByClause>(); havingClause = serviceProvider.GetRequiredService <HavingClause>(); unionClause = serviceProvider.GetRequiredService <UnionClause>(); orderByClause = serviceProvider.GetRequiredService <OrderByClause>(); forClause = serviceProvider.GetRequiredService <SqlServerForClause>(); }
public override UnionClause VisitUnion(UnionClause clause) { var result = base.VisitUnion(clause); if (clause.Type.HasValue) { builder.Append("\r\n\r\nunion"); if (clause.Type == UnionType.All) { builder.Append(" all"); } builder.Append("\r\n\r\n"); } return(result); }
/// <summary> /// Converts an UNION clause to string /// </summary> static string UnionToStr(UnionClause clause, SqlExprParams pars) { var b = new StringBuilder(); var typeStr = clause.Type == UnionType.Union ? ( clause.Uniqueness == UnionUniqueness.All ? "UNION ALL" : "UNION" ) : clause.Type == UnionType.Intersect ? "INTERSECT" : clause.Type == UnionType.Except ? "EXCEPT" : throw new ArgumentException(); var queryStr = StatementStr.QueryToStr(clause.Query, pars.ParamMode, pars.ParamDic); b.AppendLine(typeStr); b.AppendLine("("); b.AppendLine(TabStr(queryStr.Sql)); b.Append(")"); return(b.ToString()); }
public virtual UnionClause VisitUnion(UnionClause clause) { clause.SelectClause = VisitSelect(clause.SelectClause); return(clause); }
protected string CompileUnion(UnionClause union) { string joiner = union.All ? " union all " : " union "; return(joiner + union.Query.ToSql()); }