我想將此格式的字符串「PERIOD
」yyyymmdd
(例如:20120701)轉換爲SQLServer中的日期。 所以我用convert函數是這樣的:在SQLServer中將字符串轉換爲日期算術溢出
CONVERT(DATETIME,PERIOD,102);
和
CONVERT(DATETIME,PERIOD,120);
,但我發現了一個
SQLEXCEPTION:「算術溢出錯誤將表達式轉換爲 數據類型的datetime 「。
這是整個查詢,這裏有沒有其他的錯誤?
"SELECT ACTUAL_N_WELLS, TARGET_N_WELLS, [YTD ACTUAL] AS YTD_ACTUAL, [YTD BUDGET] AS YTD_BUDGET FROM DASH_GL_DRILLING_PERF WHERE ASSET_NAME='Bu Hasa Asset' AND (CONVERT(DATETIME,PERIOD,112) > (SELECT DATEADD(MONTH,-3,MAX(CONVERT(DATETIME,PERIOD,112))) from DASH_GL_DRILLING_PERF))");
什麼是做這種正確的方法是什麼?
我沒有使用的價值,我使用的列即名「 PERIOD「.. –
而它的一個varchar? –
謝謝先生!這確實是問題,它不是vchar。數據類型更改爲vchar時,問題得以解決。 –