2015-05-01 60 views
0

我在SAS DIS中有一個臨時工作表,日期變量爲source_datetime。該變量的格式爲DATETIME22.6SAS值無法轉換爲Teradata日期

我有一個Teradata表與日期字段target_date(類型DATE),並使用表裝載機我試圖映射到source_datetimetarget_date。當我運行轉換時出現錯誤

ERROR: A SAS value cannot be converted to a Teradata date

臨時工作表中填充了良好的數據。當我嘗試從DATETIME22.6DATE9.的轉換時,輸出看起來像「*********」。

深表謝意。

+0

你能縮小它到一個特定的行/值是否導致錯誤? –

+0

所有行都具有相同的日期值。它發生在試圖加載第一行時 – Rookatu

+0

哦,對不起,你確實這麼說。 =)你的日期列是什麼類型? –

回答

2

我對DIS或Teradata知之甚少,但我不認爲兩者都與您的問題有關。

日期時間值是自1960年1月1日00:00:00以來的秒數。日期值是自1960年1月1日以來的天數。

聽起來好像您試圖將date9格式應用於日期時間值。如果你這樣做,它通常看起來像*********,因爲秒數太高而不能表示爲日期。如果您想保留日期時間值,但要將其格式化爲日期,請使用dtdate9格式。否則,您可以使用datepart()函數將日期時間值轉換爲日期值,然後使用date9格式。

+0

嗨DWal。是的,我一直在使用'DATEPART'從'datetime'轉到'date9.',並使用'dhms'來反過來。應用一次工作正常。但是由於某種原因,這項工作已經被設定爲多次進行這些轉換,我認爲這是搞砸了這個程序的原因。我不能再詳細解釋,這只是一個懷疑,但正如你所期望的那樣,編寫這個工作的方法比這個更好,而且我已經實施了更好的方法。感謝您的幫助! – Rookatu

相關問題