Exemple #1
0
            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.");
                }
            }
Exemple #2
0
 public DataAggregate(DataAggregateFunction function, string name, string alias = null, bool distinct = false)
 {
     this.Function = function;
     this.Name     = name;
     this.Alias    = alias;
     this.Distinct = distinct;
 }
Exemple #3
0
        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);
        }
Exemple #4
0
            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;
            }
Exemple #5
0
 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;
 }
Exemple #7
0
 public static DataServiceMethod Aggregate(DataAggregateFunction aggregate) => new DataServiceMethod(aggregate.ToString(), DataAccessMethod.Aggregate, false);
Exemple #8
0
 public DataAggregate(DataAggregateFunction function, string name, string alias = null)
 {
     this.Function = function;
     this.Name     = name;
     this.Alias    = alias;
 }