2010-06-09 34 views
2

我试图获得YEARWEEK函数来查看周日作为一周中的第一天。如何获得YEARWEEK()将周日视为本周的开始?

一个例子日期是:星期天2009年3月1日

这里是我的SQL

SELECT YEARWEEK('2009-03-01') 

,其结果是

- > 200909

哪个9.我相信周它告诉我这是第9周,因为它认为星期日是前一周的最后一天。

我该如何获得这个函数来查看星期日作为一周的第一天,因此返回为第10周?

+0

'SELECT DATE_FORMAT('2009-03-01','%Y%U')'也返回'200909' - 我认为您对200910的看法是错误的:http://dev.mysql.com/ DOC/refman/5.1/EN /日期和时间functions.html#function_date格式 – 2010-06-09 16:31:55

回答

0

这将做到这一点:

SELECT YEARWEEK('2009-03-01')+IF(WEEKDAY('2009-03-01')=6,1,0); 

编辑:这是更好的解决方案,以获取更多信息,请点击here

SELECT YEARWEEK('2009-03-01',0); 

(但我不知道你为什么要这样做 - 2009.03.01 在第9周是,而不是10 ...)

相关问题