我正在执行以下Java代码:
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("UTC"));
System.out.println(cal.get(Calendar.WEEK_OF_YEAR));
System.out.println(cal.getTime());
输出:
28
Fri Jul 08 08:56:04 BST 2016
以下是我在MYSQL中执行的命令:
select week(CURDATE()), CURDATE();
输出:
27 2016-07-08
如何同步一年中的一周值?我尝试了week(CURDATE(),0)
仍然是相同的结果,但没有TimeZone
也尝试过但得到相同的结果。
答案 0 :(得分:2)
"一年中第一周的定义"是一个abitrary。您需要找出正在使用的MySQL定义是什么,并使Java与之匹配,或者找出默认的Java定义是什么,并使MySQL与之匹配。
在Java方面,它会受到Calendar#setFirstDayOfWeek和Calendar#setMinimalDaysInFirstWeek的影响(可能是其他人,请查看Calendar
文档)。