Kettle實現動態SQL
Kettle是一種開源的ETL工具
需求:
每天新建一個日誌表,使用Kettle匯出最新一天的資料。
模擬環境如下
create table tab_20140901 (id varchar(20));
create table tab_20140902 (id varchar(20));
create table tab_20140903 (id varchar(20));
create table tab_20140904 (id varchar(20));
insert into tab_20140901 values(1);
insert into tab_20140902 values(2);
insert into tab_20140903 values(3);
insert into tab_20140904 values(4);
首先,建立一個Job
獲取最新的表的轉換:
SQL:
匯出最新表的資料的轉換
他先獲取上個轉換的變數.
寫入變數,實現動態SQL
執行Job,檢視SQL檔案輸出如下
INSERT INTO t(id) VALUES ('4');
後來經過測試,第二個轉換不使用 "獲取變數"也可以
參考:
http://blog.csdn.net/rotkang/article/details/21008271
需求:
每天新建一個日誌表,使用Kettle匯出最新一天的資料。
模擬環境如下
create table tab_20140901 (id varchar(20));
create table tab_20140902 (id varchar(20));
create table tab_20140903 (id varchar(20));
create table tab_20140904 (id varchar(20));
insert into tab_20140901 values(1);
insert into tab_20140902 values(2);
insert into tab_20140903 values(3);
insert into tab_20140904 values(4);
首先,建立一個Job
獲取最新的表的轉換:
SQL:
-
SELECT table_name
-
FROM information_schema.tables
-
WHERE table_schema = 'mvbox'
-
AND str_to_date(substr(table_name, 5), '%Y%m%d') = (
-
SELECT MAX(str_to_date(substr(table_name, 5), '%Y%m%d'))
-
FROM information_schema.tables
-
WHERE table_schema = 'mvbox'
- );
匯出最新表的資料的轉換
他先獲取上個轉換的變數.
寫入變數,實現動態SQL
執行Job,檢視SQL檔案輸出如下
INSERT INTO t(id) VALUES ('4');
後來經過測試,第二個轉換不使用 "獲取變數"也可以
參考:
http://blog.csdn.net/rotkang/article/details/21008271
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-1270110/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- kettle 實用功能之三 ---- 使用 kettle 群發動態內容的郵件。
- kettle從入門到精通 第六十五課 ETL之kettle 執行動態SQL語句,輕鬆實現全量&增量資料同步SQL
- SQL 如何實現動態的行列轉置SQL
- Kettle實現行轉列
- MyBatis標籤實現的動態SQL語句MyBatisSQL
- 使用動態SQL語句實現簡單的行列轉置(動態產生列)SQL
- MyBatis進階--介面代理方式實現Dao 和動態SQLMyBatisSQL
- kettle 實現mysql單表增量同步MySql
- 動態SQLSQL
- 動態SQL intoSQL
- Mybatis連線池_動態sql語句_多表查詢實現MyBatisSQL
- 關於IDEA使用xml實現動態sql的問題IdeaXMLSQL
- 動態棧的實現
- Mybatis 裡對映檔案的動態 SQL 語句,實現if,where,foreache的SQL語句動態拼接查詢MyBatisSQL
- kettle從入門到精通 第六十九課 ETL之kettle kettle cdc mysql,輕鬆實現實時增量同步MySql
- MyBatis 動態 SQLMyBatisSQL
- MybBatis動態SQLBATSQL
- Mybatics動態sqlBATSQL
- ABAP 動態 SQLSQL
- Oracle 動態SQLOracleSQL
- mybatis動態SQLMyBatisSQL
- Feign實現動態URL
- Avalonia 實現動態托盤
- Nginx 動態 upstreams 實現Nginx
- 手動實現ArrayList動態陣列陣列
- PLSQL Language Referenc-PL/SQL動態SQL-何時需要動態SQLSQL
- Android 動態代理以及利用動態代理實現 ServiceHookAndroidHook
- PL/SQL執行動態SQLSQL
- CDC+PL/SQL或者CDC+kettle。SQL
- GitLab 實現動態 Environment URLGitlab
- vue 實現動態拓撲圖Vue
- 實現動態大數結構
- HTML+CSS實現動態相簿HTMLCSS
- Flask SocketIO 實現動態繪圖Flask繪圖
- Laravel 動態屬性的實現Laravel
- SVG實現動態模糊動畫效果SVG動畫
- SVG 實現動態模糊動畫效果SVG動畫
- javascript實現動態側邊欄JavaScript