我在mysql date_format()
的文档中看到它返回53或54个不同的值。据我所知,岁数有52周或53周。这多余的一周从哪里来?
%U Week where Sunday is the first day of the week (00 to 53)
%u Week where Monday is the first day of the week (00 to 53)
%V Week where Sunday is the first day of the week (01 to 53). Used with %X
%v Week where Monday is the first day of the week (01 to 53). Used with %X
https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html
那么U和V标志之间有什么区别? U标志的范围不应该在(00到52)之间吗?
谢谢!
答案 0 :(得分:2)
从播放日期范围为2018-01-01(星期一)至2018-01-07(星期日)的日期时可以看到的内容:
V
可以返回上一年的周号: SELECT DATE_FORMAT("2018-01-05", "%V");
返回53(这里的周从2017年的周日开始)。 %v
的工作原理相同,但上面的返回值为0,因为星期一是一周的第一天,并且已经在2018年。
U
不具有该属性:对于带有%U
的上述内容,将返回1。