次の方法で共有


System.Math メソッド (LINQ to SQL)

LINQ to SQL は、次の Math メソッドをサポートしていません。

.NET との相違

.NET Framework で使用される丸めセマンティクスは SQL Server とは異なります。 .NET Framework の Round メソッドは銀行型丸めを実行します。銀行型丸めでは、.5 で終わる数値は次の桁に切り上げられるのではなく、最も近い偶数になるように丸められます。 たとえば、2.5 は 2 に丸められ、3.5 は 4 に丸められます (この方法は、大規模なデータ トランザクションで、値が大きくなる組織的バイアスの回避に役立ちます)。

SQL では、ROUND 関数は常に、0 から遠ざかる方向に丸めを実行します。 したがって、2.5 は 3 に丸められます。これは、2 に丸められる .NET Framework とは対照的です。

LINQ to SQL は、SQL の ROUND セマンティクスに到達するため、銀行型丸めを実装しようとしません。

参照

その他の技術情報

データ型と関数 (LINQ to SQL)