我需要在查询中返回2行。一行有一个字符串今天和一些案件今天关闭,在我的第二行我需要一个字符串上周和一些案件在上周关闭。
我如何与范围日期分组?
Sum Name
----------- ----------
12 Today
33 Last Weeb
答案 0 :(得分: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
),但它会为您提供您所追求的结果。
答案 1 :(得分:0)
GROUP BY YEARWEEK(date)
应该有效。根据您的dbms,您可以使用其他功能,也可以自己编写。
http://www.tutorialspoint.com/sql/sql-date-functions.htm#function_yearweek