2015-11-25 145 views
1

我有要求,目標文件日期如20151125需要通過informatica轉換爲11/25/2015。文件從informatica生成到unix服務器。將文件'YYYYMMDD'轉換爲'MM/DD/YYYY'的日期格式

SELECT to_char(to_date(substr(IN_DATE,16,20),'YYYY/MM/DD HH24:MI:SS'),'MM/DD/YYYY HH24:MI:SS') "NOW" 
FROM DUAL; 

試過這將在Oracle工作,但在Informatica的生成文件時,它不工作。

+1

什麼是您的源和目標?文件/數據庫?什麼是目標列數據類型? – Samik

+1

來源 - 表達式轉換(informatica)添加新的變量值。目標 - 文件在Unix中(它的目的是爲了保證文件的安全性)。v_date = to_char(to_date(substr(FILE_NAME,16,20),'YYYY/MM/DD HH24:MI:SS'),'MM/DD/YYYY HH24:MI:SS'應該體現在文件頭)。 – Suresh

+1

如果日期爲20151125,您爲什麼要做substr(FILE_NAME,16,20)?該日期是FILE_NAME的一部分?你能顯示一個示例文件名嗎? – Samik

回答

2

轉換日期列到日期數據類型指定的日期格式(年月日)它應該閱讀,然後將其轉換成字符表示指定在這種情況下,你想要的格式(MM/DD/YYYY)在表達轉換

TO_CHAR(TO_DATE(date_column, 'YYYYMMDD'), 'MM/DD/YYYY')

相關問題