Freigeben über


System.Math-Methoden (LINQ to SQL)

LINQ to SQL unterstützt die folgenden Math-Methoden nicht.

Unterschiede zu .NET

.NET Framework weist gegenüber SQL Server eine andere Rundungssemantik auf. Die Round-Methode in .NET Framework führt eine unverzerrte Rundung (Banker's Rounding) durch, bei der Zahlen, die auf ,5 enden, nicht auf die nächsthöhere Ziffer, sondern auf die nächste ungerade Ziffer gerundet werden. 2,5 wird zu 2 abgerundet, während 3,5 zu 4 aufgerundet wird. (Mit dieser Technik können bei großen Datentransaktionen systematische Abweichungen gegenüber höheren Werten vermieden werden.)

In SQL rundet die ROUND-Funktion stattdessen immer weg von 0. 2,5 wird daher auf 3 gerundet (im Gegensatz zur Rundung auf 2 in .NET Framework).

LINQ to SQL leitet an die SQL-ROUND-Semantik weiter und versucht nicht, eine unverzerrte Rundung (Banker's Rounding) zu implementieren.

Siehe auch

Weitere Ressourcen

Datentypen und Funktionen (LINQ to SQL)