【问题标题】:Sum of data for current week using projection queries使用投影查询的本周数据总和
【发布时间】:2011-06-01 17:59:30
【问题描述】:

我想在数据库中对本周的字段进行总计。例如,如果今天是星期三,我想计算当前星期一到星期三的总数,如果是星期四,那么星期一到星期四。我将如何使用 NHibernate 中的投影查询来做到这一点?在下面的代码中,我将如何对数据进行分组,以便仅显示当前周的总和。数据库中的日期字段名为 MyDate,类型为 datetime。

DateTemplate.Criteria = DetachedCriteria.For(typeof(MyBill));


    DateTemplate.Criteria.SetProjection(
    Projections.ProjectionList()
          .Add(Projections.Sum(Projections.Conditional
                            (Restrictions.Eq("PayType", "ABC"),
                                  Projections.Constant(1), Projections.Constant(0))), "GCashSales")
                .Add(Projections.Sum(Projections.Conditional
                            (Restrictions.Eq("PayType", "DEF"),
                                  Projections.Constant(1), Projections.Constant(0))), "GCreditSales"));

【问题讨论】:

    标签: c# nhibernate hibernate-criteria nhibernate-projections


    【解决方案1】:

    执行此操作的最简单方法可能是在查询之外计算开始/结束日期,并将Between 限制添加到您的投影列表中。

    .Add(Restrictions.Between("MyDate", startDate, endDate))
    

    【讨论】:

    猜你喜欢
    • 2012-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多