/// <summary> /// 设置分组字段 /// </summary> /// <param name="FieldName"></param> public void SetGroupBy(string FieldName) { if (this.GetGroupBy == null) { this.GetGroupBy = new GroupBy(); } this.GetGroupBy.SetField(FieldName); }
public IGroupByList Append(IGroupBy expression, bool copyToColumns = false) { this._expressions.Add(expression); if (copyToColumns) { this.Columns.Append(expression.Column); } return(this); }
public From <TColumns> GroupBy(IGroupBy groupBy) { if (this.GroupByNode != null) { throw new ApplicationException(); } QueryNodeHelper.SwitchParent(groupBy, this); this.GroupByNode = groupBy; return(this); }
public HqlProjection(Type type, string projectionName, string projectionAlias) { _rootEntityName = type.Name; _projectionName = projectionName; _projectionAlias = projectionAlias; if (_projectionName.Contains(".")) { _projectionNameSplits = _projectionName.Split('.'); } _reuquiredJoin = new HqlJoin(_rootEntityName, _projectionName); _requiredGroupBy = new HqlGroupBy(GetProjectionName(), false); }
public HqlProjection(Type type, string projectionClause, string projectionName, string projectionAlias) { if (!_supportedClauses.Contains(projectionClause.ToLower())) { throw new HqlException(string.Format("The clause '{0}' is not supported.", projectionClause)); } _projectionClause = projectionClause; _rootEntityName = type.Name; _projectionName = projectionName; _projectionAlias = projectionAlias; if (_projectionName.Contains(".")) { _projectionNameSplits = _projectionName.Split('.'); } _reuquiredJoin = new HqlJoin(_rootEntityName, _projectionName); _requiredGroupBy = new HqlGroupBy(GetProjectionName(), true); }
public GroupExecutor(IList <IGroupBy <TItem> > groupBys, IGroupBy <TItem> itemBy) { _groupBys = groupBys; _itemBy = itemBy; }
public IGroupByList AppendWithColumn(IGroupBy expression, string column, string columnAlias, string prefix = "", string postfix = "") { this._expressions.Add(expression); this.Columns.AppendAlias(column, columnAlias, prefix, postfix); return(this); }
public RankingGroupByArgs(IGroupBy groupBy, RankingOption option, int count, IColumnIdentifier operand, ColumnType type) : base(option, count, operand, type) => GroupBy = groupBy;
public GroupByFilter(IResultSetFilter filter, IGroupBy groupBy) => (Filter, GroupBy) = (filter, groupBy);
/// <summary> /// Groups a selected set of rows into a set of summary rows by the values of one or more columns or expressions. /// </summary> /// <param name="prev">A predecessor object.</param> /// <param name="columns">Are column expressions on which grouping is performed.</param> public static GroupByChainer GroupBy(this IGroupBy prev, params GroupingArgument[] columns) { return(new GroupByChainer((Chainer)prev, columns)); }