예제 #1
0
 private object Aggregate(BasicFieldInfo field, AggregateType aggregateType, bool isDistinct)
 {
     if (!_mapping.Equals(field.TableMapping))
     {
         throw new LightDataException(RE.FieldIsNotMatchDataMapping);
     }
     return(_context.Aggregate(field.DataField, aggregateType, _query, isDistinct, _level));
 }
예제 #2
0
 /// <summary>
 /// 聚合统计该字段的总和
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <param name="isDistinct">是否去重</param>
 /// <returns>结果</returns>
 public object Sum(BasicFieldInfo field, bool isDistinct)
 {
     return(Aggregate(field, AggregateType.SUM, isDistinct));
 }
예제 #3
0
 /// <summary>
 /// 聚合统计该字段的总和
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <returns>结果</returns>
 public object Sum(BasicFieldInfo field)
 {
     return(Sum(field, false));
 }
예제 #4
0
 /// <summary>
 /// 聚合统计该字段的平均值
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <param name="isDistinct">是否去重</param>
 /// <returns>结果</returns>
 public object Avg(BasicFieldInfo field, bool isDistinct)
 {
     return(Aggregate(field, AggregateType.AVG, isDistinct));
 }
예제 #5
0
 /// <summary>
 /// 聚合统计该字段的平均值
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <returns>结果</returns>
 public object Avg(BasicFieldInfo field)
 {
     return(Avg(field, false));
 }
예제 #6
0
 /// <summary>
 /// 聚合统计该字段的最小值
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <param name="isDistinct">是否去重</param>
 /// <returns>结果</returns>
 public object Min(BasicFieldInfo field, bool isDistinct)
 {
     return(Aggregate(field, AggregateType.MIN, isDistinct));
 }
예제 #7
0
 /// <summary>
 /// 聚合统计该字段的最小值
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <returns>结果</returns>
 public object Min(BasicFieldInfo field)
 {
     return(Min(field, false));
 }
예제 #8
0
 /// <summary>
 /// 聚合统计改字段的数量
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <param name="isDistinct">是否去重</param>
 /// <returns></returns>
 public object CountField(BasicFieldInfo field, bool isDistinct)
 {
     return(Aggregate(field, AggregateType.COUNT, isDistinct));
 }
예제 #9
0
 /// <summary>
 /// 聚合统计改字段的数量
 /// </summary>
 /// <param name="field">统计字段</param>
 /// <returns>结果</returns>
 public object CountField(BasicFieldInfo field)
 {
     return(CountField(field, false));
 }