2

我只需要在查询中返回 2 行。一行今天有一个字符串,今天有一些案件结案,在我的第二行上,我需要一个字符串上周和上周结案的一些案件。

我如何与范围日期分组?

Sum         Name                                              
----------- ----------
12           Today                                
33           Last Weeb                                        
4

2 回答 2

3

这个怎么样:

var caseCounts = Cases
    .Where(c => c.Date == today || (c.Date >= startOfLastWeek && c.Date <= endOfLastWeek))
    .GroupBy(c => c.Date == today ? "Today" : "Last Week")
    .Select(g => new {
        Name = g.Key, Sum = g.Count() 
    });

您需要事先定义 3 个日期 ( today, startOfLastWeek, endOfLastWeek),但它会为您提供您所追求的结果。

于 2013-09-08T23:32:46.167 回答
0

GROUP BY YEARWEEK(date)应该管用。根据您的 dbms,您可能能够使用其他功能,或编写您自己的功能。

http://www.tutorialspoint.com/sql/sql-date-functions.htm#function_yearweek

于 2013-09-08T23:22:34.137 回答