2016-11-23 110 views
0

我將源數據用作MySQL數據庫,並將表中的日期與Pentaho中的系統生成日期進行比較。無法比較Pentaho Kettle中的日期

我使用的查詢象下面這樣:對 'created_at'

Select * FROM trvs_consumer WHERE created_at > ? 

值是這樣的:對於2016/07/28 00:00:00.000000000

價值 '?'從Pentaho的系統信息是這樣的:1900/01/01 04:30:00.000

當我運行查詢,我得到下面的錯誤:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?' at line 25 

但是,當我運行的查詢,而無需在where子句中,它運行完美。有什麼建議麼 ?

+1

大概在Pentaho的到系統的連接是錯誤的。 – sagi

+0

@sagi,我查看了詳細的日誌,發現錯誤爲: 您的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,在'?'附近使用正確的語法。在線25 任何想法? – Sarang

+0

你可以看看執行的SQL嗎?我懷疑日期沒有以正確的格式輸出。 – sagi

回答

1

mysql require it開始,您必須使用正確的日期格式才能在mysql查詢中使用。

使用選擇值步驟,並指定正確的日期格式。這裏是例子。在「獲取系統日期」步驟中,我們生成新的隨機日期。在'選擇值'步驟中,我們爲mysql分配正確的日期格式。然後我們可以在一些查詢中使用這個新字段。 PDI不會自動識別數據庫供應商的正確日期格式,我們必須手動處理。

enter image description here