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

Was ist falsch an dieser SQL Server-Abfrageteilungsberechnung?

Das liegt daran, dass Sie eine ganzzahlige Division durchführen. Sie sollten einen der Operanden in Gleitkommazahl oder Dezimalzahl umwandeln (abhängig von der Genauigkeit und dem Zweck der von Ihnen durchgeführten Berechnung), indem Sie Folgendes verwenden:

((CAST((a+ b + c) AS FLOAT) / 3) / 216647 * 10)

oder evtl.:

(((a+ b + c) / 3.0) / 216647.0 * 10)