Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Verstehen Sie das Rundungsverhalten in SQL Server nicht, wenn Sie den Divisionsoperator verwenden

decimal(38,22) / decimal(38,22) endet mit decimal(x, 6) nach diese Regeln

Sie haben also 0,33333, bevor Sie zurück zu decimal(38,22) wandeln

@otherDivisor wird in (38, 0) umgewandelt und bleibt dezimal(x,22)

Siehe mein bearbeitetes Beispiel