Mysql 当会计年度发生变化时,更新最近两个会计周的表格
我有一张表格,我需要找到我在前一周和前一周收到的订单数量。我可以通过两个简单的计算做到这一点:Mysql 当会计年度发生变化时,更新最近两个会计周的表格,mysql,visualization,tableau-api,Mysql,Visualization,Tableau Api,我有一张表格,我需要找到我在前一周和前一周收到的订单数量。我可以通过两个简单的计算做到这一点: 获取最后两周:(在筛选中使用1作为选择) 如果[f_Year]=[maxyear]和[f_week]=[maxweek]-2和[maxweek]>2,则1其他0结束 订单总数:(在“标记”窗格中使用) COUNTD(如果[f_week]>=[maxweek]-2和[f_week]2,[f_Year]=[maxyear]和[f_week]=[maxweek]-2, IIF([maxweek]=2,([f
IIF([maxweek]>2,[f_Year]=[maxyear]和[f_week]<[maxweek]和[f_week]>=[maxweek]-2,
IIF([maxweek]=2,([f_Year]=[maxyear]或[f_Year]=[maxyear]=1)和([f_Year]=52或[f_Year]=1),
[f_年]=([maxyear]-1)和[f_周]=51或[f_周]=52)
根据上述计算,当maxweek=2时,其返回2015年和2016年的第一个财政周。我只需要从2016年开始的第一个财政周
如何修改我的上述计算,以便即使会计年度发生变化,该表仍保留去年会计周的值。您必须使用if ELSE条款处理此问题。如果当前周=1或2,则财政年=当前年1,财政周=52或51(硬编码)。这必须作为硬代码基础,因为财政周是非线性的,因为它在下一个周期从52变为1。你不能指望线性数学能解决这个问题。我需要把这个硬编码部分作为单独的计算吗?如果我在Get Last Weeks calculation字段中包含此硬编码部分,则Tableau将抛出错误,因为它期望在“then”之后有一个布尔值。如果没有数据/计算,则很难进行验证。若你们可以分享任何公共链接,那个么我也许可以展示。我用硬编码的逻辑修改了我的问题。若并没有任何示例,这将是很困难的。从公式的观点来看,你似乎是正确的,但我无法证实你的正确性。
IIF([maxweek] > 2, [f_Year] = [maxyear] AND [f_week] < [maxweek] AND [f_week] >= [maxweek] -2 ,
IIF([maxweek] = 2, ([f_Year] = [maxyear] OR [f_Year] = [maxyear]-1) AND ([f_week] = 52 or [f_week] = 1),
[f_Year] = ([maxyear] - 1) AND [f_week] = 51 OR [f_week] = 52))