定时按日跑数,并且要实现一个时间范围的数据覆盖
<h3><span style="font-weight: bold;">需求内容为:</span></h3><p>按照【日】来去进行数据抽取。但是每天需要覆盖当天之前的30天内的数据内容。如何用【荣培数据加工厂】来实现呢?</p><p>安排!!!!</p><p>1、首先要明白一个事情,就是荣培数据加工厂调度会按照频率传递一个参数值。参数的名称为固定格式 <span style="font-weight: bold;"> ${batchCode} </span></p><p>如果是年 :yyyy ,月:yyyymm , 日:yyyymmdd<br></p><p>以2024年1月15日为例 那么传的批次数据就是【20240115】</p><p>那么我们按照这个值的格式来获取对应的开始时间和截止时间即可</p><p>2、如果是按照上方示例数值,那么我们通过sql先得到时间范围的2个值。如下</p><pre><code>select <br> DATEADD(DAY, -30, convert(date ,left('20240115',4)+'-'+substring('20240115',5,2)+'-'+right('20240115',2) ,23)) as beginDate<br> ,convert(date ,left('20240115',4)+'-'+substring('20240115',5,2)+'-'+right('20240115',2) ,23) as endDate</code></pre><p><img src="http://www.wrenchdata.com:8443/uploaded/202401/20240115120947_r7.png" style="max-width:100%;"><br></p><p>结果显示没有问题,那么将编辑器里的值换成我们系统的批次格式来应用即可</p><p>3、先做删除,再做插入</p><p><img src="http://www.wrenchdata.com:8443/uploaded/202401/20240115121035_qt.png" style="max-width:100%;"><br></p><p>通过预览没有问题,那么就可以了。</p><p>这样的设置可以随时进行历史数据的重新抽取,也是一个道理。</p>
收藏(0)
分享
相关标签:
注意:本文归作者所有,未经作者允许,不得转载