1
地方,我有一個要求的Sql截斷成十進制條件
DECLARE @Test TABLE
(Id int not null,
AMOUNT decimal(20,3) not null)
Insert into @Test values(1, 100.943)
Insert into @Test values(2, 100.000)
Insert into @Test values(3,100.943)
SELECT Id,
case
when Id = 2 then
CAST(ROUND(AMOUNT,2,4) AS DECIMAL(19,2))
else AMOUNT
end as AMOUNT
from @Test
,但它不會產生期望的結果。 返回的結果是
Id AMOUNT
1 100.943
2 100.000
3 100.943
我怎樣才能獲得金額被截斷爲2位小數,只有當ID = 2
預期的結果是
Id AMOUNT
1 100.943
2 100.00
3 100.943
你會得到什麼結果? –
您的查詢本身工作正常在這裏檢查http://sqlfiddle.com/#!3/d41d8/31700,這也是http://sqlfiddle.com/#!3/d41d8/31701 –
編輯我的問題與我得到的結果和我所期待的 – xaria