kettle mysql 分页_kettle 分页抽数
1】 分頁
2】變量設(shè)置 == 全局/局部
3】查詢總數(shù)據(jù)量,并設(shè)置變量
SELECT
count(1) total_page
FROM
dmlog_policy t
WHERE 1=1
and t.trans_status in ('0','3')
and contractid between ${fromContractId} and ${toContractId}
and riskCode = ${riskCode}
-- 過濾掉大團單
-- and not exists (select 1 from big_policy a where a.contractid= t.contractid)
4】js增加判斷 == 是否繼續(xù)/結(jié)束 false退出
var subject="自定義日志輸出";
//實例化工廠類
var logFactory = new org.pentaho.di.core.logging.LogChannelFactory();
//實例化日志channel對象
var log= logFactory.create(subject);
//日志輸出
log.logMinimal("-------------分頁判斷-------------------");
var currPage = parent_job.getVariable("curPage");// 從job獲取當(dāng)前頁數(shù)值(當(dāng)前第幾頁)
var page_size = parseInt(parent_job.getVariable("pageSige")); // 分頁條數(shù)
var total_page = parent_job.getVariable("TOTAL_PAGE"); // 當(dāng)前線程總數(shù)
var riskcode = parent_job.getVariable("riskCode"); // 當(dāng)前遷移險種
log.logMinimal("-------------currPage:" + currPage + ",page_size:" + page_size + ",total_page:" +total_page+ ",riskcode:"+ riskcode+"-------------------");
if(total_page == null || total_page == undefined || total_page == ""){
// 總數(shù)為空的時候,直接返回錯誤
false;
}else{
total_page = parseInt(total_page);
}
if(currPage == null || currPage == undefined || currPage == ""){
// 當(dāng)前頁為空的時候,直接返回錯誤
false;
}else{
var nextCurrPage = parseInt(currPage)+1;
}
//超過100次循環(huán)會堆棧內(nèi)存溢出,故限制在100次之內(nèi)
if( (currPage*page_size) < total_page && nextCurrPage<=100 ){
parent_job.setVariable("curPage",(parseInt(currPage)+1));
true;
}else{
false;
}
補充1】
條件:檢驗字段的值
總結(jié)
以上是生活随笔為你收集整理的kettle mysql 分页_kettle 分页抽数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ps取消选择快捷键是什么(PS里面取消选
- 下一篇: 史上最坑爹的游戏有哪些攻略7