sqlite
select strftime('%W','2016-07-04','weekday 1')
得到的是 27
excel WEEKNUM函数得到的是28
请问怎么修改sqlite SQL得到的也是28
这个取决于'weekday 1' 这个参数
它声明了你把星期几当作每周的最后一天 (也就是参数的下一天作为每周的起始)
weekday 1就是 周二作为每周的第一天计算。
excel默认是以周天作为每周第一天 并且每年的第一周返回1(sqlite为0)
换而言之 想到达到同样的算法 你需要:
select strftime('%W','2016-07-04','weekday 6') + 1
这只是基数的问题,
%W week of year 00-53
基数从0开始,返回的当然是27,你喜欢基数从1开始,就自己加1呗。
这是程序员两个派别之争,0派和1派,哈哈。