2017-01-29 25 views
1

我有表,這裏的結構MYSQL - 如何獲得零值

id price  net_price 

1  20000  19800 

類型數據的價格和net_price是雙,當我運行此查詢

SELECT CAST(net_price - price as unsigned) WHERE id = 1 

結果爲18446744073709551416,我想要的結果值爲0

前感謝

+0

價格永遠不會翻番。這就是爲什麼小數發明 – Strawberry

+0

好的感謝您的意見 –

回答

4

爲-200無符號值是1844674407370下面9551416.

使用,如果你想負值0:

select case 
     when net_price - price < 0 
      then 0 
     else net_price - price 
     end 
from t 
where id = 1; 

此外,建議使用十進制類型,而不是雙做貨幣計算爲雙並不能代表準確值。

+0

謝謝它的作品 –