【发布时间】:2021-10-22 08:27:18
【问题描述】:
我正在尝试找出复制 weeknum([date],16) 的 excel 函数所需的语法,这将在 MySQL 中实现相同的结果。
目前,EXCEL WEEKNUM 16
=WEEKNUM(DATE(2021,1,1),16) = 1
但是 MySQL 中的所有 week 函数都无法复制这个,我也尝试过
select week('2021-01-01', 0) from dual; result = 0
select week('2021-01-01', 1) from dual; result = 0
select week('2021-01-01', 2) from dual; result = 52
select week('2021-01-01', 3) from dual; result = 53
select week('2021-01-01', 4) from dual; result = 0
select week('2021-01-01', 5) from dual; result = 0
select week('2021-01-01', 6) from dual; result = 53
select week('2021-01-01', 7) from dual; result = 52
所以到目前为止,我唯一的选择是使用 CASE 语句并手动 +/- 周数进行匹配;但是,这在前几年(再次)尝试匹配 Excel WEEKNUM 16 时不起作用。
目前在 StackOverflow 上有一个问答:MySQL week() Function to begin with Saturday 问同样的问题;但是,我已经尝试了提出的解决方案,但它不起作用。
任何帮助将不胜感激!
【问题讨论】:
标签: mysql excel week-number