2017-03-16 35 views
0
REPLACE(ToDate('$current__ts', 'yyyy-MM-dd HH:mm:ss'),'-','') as new_DT, 

我試圖用去除通過current_ts或時間戳轉換 - YYYY-MM-DD所以輸出應該是YYYYMMDD HH之間:毫米:ss豬轉換傳遞給豬腳本時間戳和使用替換功能

但我得到錯誤: 無法推斷org.apache.pig.builtin.REPLACE的匹配函數爲多個或不匹配。請使用明確的演員。

我還試圖下同錯誤

REPLACE((datetime)ToDate('$current__ts', 'yyyy-MM-dd HH:mm:ss'),'-','') as new_DT, 
+0

請加輸入數據的幾行!嘗試 REPLACE(ToDate($ current__ts,'yyyy-MM-dd HH:mm:ss'),' - ','') – ANI

回答

1

ToDate返回datetime對象。 REPLACE適用於字符串。你必須從TODATE到chararray投的日期時間對象,然後用它替換function.See ToString

REPLACE(ToString(ToDate('$current__ts', 'yyyy-MM-dd HH:mm:ss')),'-','') as new_DT,