private string GetAggregateName(DataAggregateFunction function) { switch (function) { case DataAggregateFunction.Count: return("COUNT"); case DataAggregateFunction.Sum: return("SUM"); case DataAggregateFunction.Average: return("AVG"); case DataAggregateFunction.Maximum: return("MAX"); case DataAggregateFunction.Minimum: return("MIN"); case DataAggregateFunction.Deviation: return("STDEV"); case DataAggregateFunction.DeviationPopulation: return("STDEVP"); case DataAggregateFunction.Variance: return("VAR"); case DataAggregateFunction.VariancePopulation: return("VARP"); default: throw new NotSupportedException($"Invalid '{function}' aggregate method."); } }
public DataAggregate(DataAggregateFunction function, string name, string alias = null, bool distinct = false) { this.Function = function; this.Name = name; this.Alias = alias; this.Distinct = distinct; }
private DataAggregateCollection Aggregate(DataAggregateFunction function, string name, string alias, bool distinct = false) { if (string.IsNullOrEmpty(name) && function != DataAggregateFunction.Count) { throw new ArgumentNullException(nameof(name)); } _members.Add(new DataAggregate(function, name, alias, distinct)); return(this); }
public AggregateOperand(DataAggregateFunction function, string member, ICondition filter = null, bool distinct = false) : base(OperandType.Function) { if (string.IsNullOrWhiteSpace(member)) { throw new ArgumentNullException(nameof(member)); } this.Function = function; this.Member = member; this.Distinct = distinct; this.Filter = filter; }
public static AggregateOperand Aggregate(DataAggregateFunction aggregate, string member, ICondition filter, bool distinct = false) => new AggregateOperand(aggregate, member, filter, distinct);
public AggregateExpression(DataAggregateFunction function, params IExpression[] arguments) : base(function.ToString(), MethodType.Function, arguments) { this.Function = function; }
public static DataServiceMethod Aggregate(DataAggregateFunction aggregate) => new DataServiceMethod(aggregate.ToString(), DataAccessMethod.Aggregate, false);
public DataAggregate(DataAggregateFunction function, string name, string alias = null) { this.Function = function; this.Name = name; this.Alias = alias; }