1
public
static
int
WeekOfTheYear()
2![](https://i-blog.csdnimg.cn/blog_migrate/34031c708bfe702fe82d01ff5c6593aa.gif)
{
3
//获取
4
CultureInfo myCI = new CultureInfo("zh-CN");
5
System.Globalization.Calendar myCal = myCI.Calendar;
6![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
7
//日期格式
8
CalendarWeekRule myCWR = myCI.DateTimeFormat.CalendarWeekRule;
9
DayOfWeek myFirstDOW = myCI.DateTimeFormat.FirstDayOfWeek;
10![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
11
//本周为第myCal.GetWeekOfYear( DateTime.Now, myCWR, myFirstDOW )周
12
int thisWeek=myCal.GetWeekOfYear( DateTime.Now, myCWR, myFirstDOW );
13
return thisWeek;
14
}
SQL语句中如何获得当前为这一年的第几周呢?
![](https://i-blog.csdnimg.cn/blog_migrate/f0cd6c7f9e7ae96feae062cb48f670f0.gif)
2
![](https://i-blog.csdnimg.cn/blog_migrate/34031c708bfe702fe82d01ff5c6593aa.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/0be121fa5b8988fbabbbc526af3b0fc0.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/b854634c0904529d4018c4c3336be836.gif)
3
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
4
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
5
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
6
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
7
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
8
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
9
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
10
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
11
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
12
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
13
![](https://i-blog.csdnimg.cn/blog_migrate/587e34b10dcf5efbc0859b53470a2db3.gif)
14
![](https://i-blog.csdnimg.cn/blog_migrate/4fd96b3cf02f4c7b5c8964ac8167f7af.gif)
比如获得周排行的功能,我是这么做的
表WeekStat
UserNO int not null,
Author varchar(64) not null,
Year int not null,
Week int not null,
PostCount int
查询语句
SELECT PostCount as ReturnNum, Author
FROM WeekStat
WHERE (Year = DATEPART(Year, GETDATE())) AND (Week = DATEPART(Week, GETDATE()))
ORDER BY PostCount DESC
这样就可以得到周排行了,性能比以前哥们用group by的要高不只百倍。
group by的在100W数据的时候已经超时了。这个根本就没有多少IO操作和CPU占用