关联A/B/C三表,基于TAG规则计算发票日期起算天数需求
三表关联计算发票起算天数问题
数据表结构
- Table A:包含
Inv_Dt(发票日期)、Vendor(供应商)字段 - Table B:包含
TAG、DAY(目标日)、MONTH(推移月数)、Term(条款)字段 - Table C:包含
Vendor(供应商)、Term(条款)字段
计算规则
关联三张表后,按以下逻辑计算从发票日期起算的天数:TAG为1-31的整数字段,若发票日期的日部分小于TAG值,则采用对应行的DAY和MONTH规则计算天数:
DAY:目标日期的日部分MONTH:从发票日期所在月份向后推移的月数
示例说明
发票日期7/02/23的日部分为7,小于TAG=16,因此采用Term=AA5、DAY=20、MONTH=00的规则:
MONTH=00表示不推移月份,目标日期为当月20日- 计算得出天数13(2月剩余13天)
数据表及期望输出
Table A Table B Table C 发票日期 供应商 | TAG 目标日 推移月数 条款 | 供应商 条款 7/02/23 100428 | 16 20 00 AA5 | 100428 AA5 17/3/23 100428 | 25 20 01 AA5 | 100428 AA5 26/3/23 100428 | 31 10 02 AA5 | 100428 AA5 22/4/23 100429 | 26 07 02 CA2 | 100429 CA2 期望输出: 发票日期 供应商 TAG 目标日 推移月数 条款 天数 7/02/23 100428 16 20 00 AA5 13 (2月剩余13天) 17/3/23 100428 25 20 01 AA5 34 (3月剩余14天 + 4月20天) 26/3/23 100428 31 10 02 AA5 45 (3月剩余5天 + 4月30天 + 5月10天) 22/4/23 100429 26 07 02 CA2 46 (4月剩余8天 + 5月31天 + 6月7天)
内容的提问来源于stack exchange,提问作者Farhan Panja
相关产品推荐
相关产品推荐

