تابع Math.Round در سی شارپ وظیفه گرد کردن یک عدد اعشار به نزدیکترین مقدار صحیح را دارد. در مواقعی که عدد اعشاری ما دقیقا وسط 2 عدد باشد (مثلا 2.5 یا 3.5)، تابع Round بصورت پیشفرض از الگوریتمی مشهور به "Banker's rounding" استفاده می کند. تعریف این الگوریتم به این صورت هست که اعداد وسط را به نزدیک ترین عدد زوج گرد می کند. برای مثال، عدد اعشری 2.5 به عدد صحیح 2 رند می شود. و عدد اعشاری 1.5 هم به  2  رند می شود.
 
اما در SQL رند کردن بصورت عادی انجام میشود، یعنی هر عدد اعشاری به نزدیک ترین عدد صحیح رند می گردد. مثلا 2.5 می شود 3، و 1.5 می شود 2. اگر بخواهیم الگوریم "رند به نزدیک ترین زوج" (Round to even)  را در sql پیاده سازی کنیم، باید یک تابع بنویسیم و از آن استفاه کنیم.
  1. CREATE FUNCTION dbo.RoundBanker (@x money, @DecimalPlaces tinyint)   
  2.      RETURNS money AS   
  3. BEGIN  
  4.   
  5.     set @x = @x * power(10, @DecimalPlaces)  
  6.     return  
  7.     case when @x = floor(@x) then @x  
  8.     else  
  9.     case sign(ceiling(@x) - 2*@x + floor(@x))  
  10.     when 1 then floor(@x)  
  11.     when -1 then ceiling(@x)  
  12.     else 2*round(@x/2,0) end  
  13.     end / power(10, @DecimalPlaces)  
  14.   
  15. END  
 که نتیجه به این صورت خواهد بود:
  1. select dbo.RoundBanker(3.454,2) --> 3.45  
  2. select dbo.RoundBanker(3.455,2) --> 3.46  
  3. select dbo.RoundBanker(3.445,2) --> 3.44  
  4. select dbo.RoundBanker(3.456,2) --> 3.46  
  5. select dbo.RoundBanker(3.445657545, 2) --> 3.45