Пример #1
0
        protected string GetAggregate(AggregateParameter wItem, bool withAlias)
        {
            string query = string.Empty;

            switch (wItem.Function)
            {
            case AggregateParameter.Func.Avg:
                query += "AVG(";
                break;

            case AggregateParameter.Func.Count:
                query += "COUNT(";
                break;

            case AggregateParameter.Func.Max:
                query += "MAX(";
                break;

            case AggregateParameter.Func.Min:
                query += "MIN(";
                break;

            case AggregateParameter.Func.Sum:
                query += "SUM(";
                break;

            case AggregateParameter.Func.StdDev:
                query += "TRUNC(STDDEV(";
                break;

            case AggregateParameter.Func.Var:
                query += "VARIANCE(";
                break;
            }
            if (wItem.Distinct)
            {
                query += "DISTINCT ";
            }
            query += "\"" + wItem.Column + "\")";
            if (wItem.Function == AggregateParameter.Func.StdDev)
            {
                query += ", 10)";
            }
            if (withAlias && wItem.Alias != string.Empty)
            {
                query += " AS \"" + wItem.Alias + "\"";
            }
            return(query);
        }
Пример #2
0
        protected string GetAggregate(AggregateParameter wItem, bool withAlias)
        {
            string query = string.Empty;

            switch (wItem.Function)
            {
            case AggregateParameter.Func.Avg:
                query += "Avg(";
                break;

            case AggregateParameter.Func.Count:
                query += "Count(";
                break;

            case AggregateParameter.Func.Max:
                query += "Max(";
                break;

            case AggregateParameter.Func.Min:
                query += "Min(";
                break;

            case AggregateParameter.Func.Sum:
                query += "Sum(";
                break;

            case AggregateParameter.Func.StdDev:
                query += "StDev(";
                break;

            case AggregateParameter.Func.Var:
                query += "Var(";
                break;
            }
            if (wItem.Distinct)
            {
                query += "DISTINCT ";
            }
            query += "[" + wItem.Column + "])";
            if (withAlias && wItem.Alias != string.Empty)
            {
                query += " AS [" + wItem.Alias + "]";
            }
            return(query);
        }
Пример #3
0
 public override void AddGroupBy(AggregateParameter aggregate)
 {
     base.AddGroupBy(GetAggregate(aggregate, false));
 }
Пример #4
0
 public override void AddOrderBy(AggregateParameter aggregate, DAL.WhereParameter.Dir direction)
 {
     base.AddOrderBy(GetAggregate(aggregate, false), direction);
 }
Пример #5
0
 public virtual void AddGroupBy(AggregateParameter aggregate)
 {
 }
Пример #6
0
 public virtual void AddOrderBy(AggregateParameter aggregate, WhereParameter.Dir direction)
 {
 }
Пример #7
0
 public override void AddGroupBy(AggregateParameter aggregate)
 {
     base.AddGroupBy("`" + aggregate.Alias + "`");
 }
Пример #8
0
 public override void AddOrderBy(AggregateParameter aggregate, Raf.Dal.WhereParameter.Dir direction)
 {
     base.AddOrderBy("`" + aggregate.Alias + "`", direction);
 }