永洪社区

标题: weeknum函数前后端不一致 [打印本页]

作者: yhdata_V9g0syGY    时间: 2022-12-28 14:12
标题: weeknum函数前后端不一致
weeknum这个函数在数据集中计算的时候和在前端脚本计算出来的不一样,前端脚本里计算出来的要比数据集中计算的多一周

作者: yhdata_ruby    时间: 2022-12-28 14:12
yhdata_V9g0syGY 发表于 2023-1-3 13:49
我是9.4.1,后台数据库连的trino,weeknum()没写参数也是以周一为第一天,这个函数是会下沉推到数据库 ...

数据库内计算:默认保留勾选,执行数据集查询时将会对SQL进行封装,计算将会下推到数据库内执行,取消勾选数据库内计算后,数据集的后续操作将不会在数据库内执行,计算将会交给内存处理。
作者: yhdata_bear    时间: 2022-12-28 14:24
使用的什么系统呢?
默认情况下,WEEKNUM 函数使用日历约定,其中包含 1 月 1 日的那周被视为该年的第一周。 但是,在使用的 ISO 8601 日历标准将第一周定义为进入新年时天数最多(四天或以上)的一周。
作者: 倘若初见    时间: 2022-12-28 14:36
WEEKNUM 函数使用日历约定
作者: yhdata_V9g0syGY    时间: 2022-12-28 15:34
yhdata_bear 发表于 2022-12-28 14:24
使用的什么系统呢?
默认情况下,WEEKNUM 函数使用日历约定,其中包含 1 月 1 日的那周被视为该年的第一周 ...

数据集里面添加计算列str(year(col['日期']))+'W'+str(weekNum(col['日期'])),2022/12/26号算2022W52,前端debug(weeknum(date(2022,12,26)))的时候,2022/12/26算53周
作者: yhdata_bear    时间: 2022-12-28 16:01
返回给定日期是一年中的第几周。
参数1:必选。给定日期。
参数2:可选。数字2代表一个星期的第一天为星期一,不填或其他表示一个星期的第一天为星期天。
例如:
var a = new Date("January 12,2006 22: 19: 35");
var b = weeknum(a);


作者: yhdata_V9g0syGY    时间: 2022-12-28 16:33
yhdata_bear 发表于 2022-12-28 16:01
返回给定日期是一年中的第几周。
参数1:必选。给定日期。
参数2:可选。数字2代表一个星期的第一天为星期 ...

所以我那个不一样是什么原因啊?
作者: yhdata_yzm    时间: 2022-12-28 17:59
yhdata_V9g0syGY 发表于 2022-12-28 16:33
所以我那个不一样是什么原因啊?

你是什么版本的
作者: yhdata_V9g0syGY    时间: 2022-12-29 10:32
yhdata_yzm 发表于 2022-12-28 17:59
你是什么版本的

9.4
作者: yhdata_ruby    时间: 2022-12-29 11:05
yhdata_V9g0syGY 发表于 2022-12-29 10:32
9.4

这边使用945都是显示53欸
作者: yhdata_V9g0syGY    时间: 2023-1-3 13:49
yhdata_ruby 发表于 2022-12-29 11:05
这边使用945都是显示53欸

我是9.4.1,后台数据库连的trino,weeknum()没写参数也是以周一为第一天,这个函数是会下沉推到数据库执行吗?




欢迎光临 永洪社区 (http://club.yonghongtech.com/) Powered by Discuz! X3.4