0
select
T1.Col1,
CASE T1.Col1
WHEN 99.95 THEN '18.97'
END
from Table T1
當我執行上述的SQL查詢我得到下面的錯誤消息:十進制數據在varchar數據類型 - 算術溢出錯誤轉換VARCHAR到數據類型數值
Arithmetic overflow error converting varchar to data type numeric.
的數據類型列T1.Col1
是Varchar
,但保存例如18.97的數據。糟糕的設計,但必須忍受它。
在發佈此處之前,我已經嘗試了很多方法來獲取此代碼。對於我試圖將數據轉換爲varchar,十進制也試圖看看我是否可以使用字符而不是十進制值,也試圖使用強制轉換函數。
請幫忙。
這是SQL Server 2005.對不起,沒有先分享這個。
select T1.Col1,case CONVERT(DECIMAL,LTRIM(RTRIM(T1.Col1))) \t \t \t WHEN '99 .99'THEN 18.97 END from Table T1。這對我有效。非常感謝圍繞這個概念推動這個想法。我想在跨平臺上工作確實有幫助。 :) – msbikk