[英]How to remove less than hundred fraction of a decimal
我想刪除所有小於百分數的分數。 例如,如果它的7526.50那么我希望它是7500(扣除26.50)。 在C#中,我這樣做如下。
NetWage = decimal.Truncate(netEarning / 100) * 100;
如何在Sql(MS SQL Server)中執行此操作?
在C#中,有沒有更優雅的方法可以做到這一點?
在C#中,有沒有更優雅的方法可以做到這一點?
不確定這是否優雅,但是有一種方法(我使用的是)。
decimal d =7526.50m;
decimal truncated = d - (d % 100);
您也可以在SQL中應用相同的邏輯。
在C#中:
Math.Round(7526.50m / 100m, 0) * 100m
在SQL Server中:
SELECT ROUND((7526.50 / 100), 0) * 100
如果您需要整數值而不是十進制值,請改用以下方法:
在C#中:
(int) (Math.Round(7526.50m / 100m, 0) * 100m)
在SQL Server中:
SELECT CAST( ROUND((7526.50 / 100), 0) * 100 AS INT)
您可以嘗試在T-SQL中進行關注。
select floor(cast(7526.50/100 as int))*100 as mynum
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.