SQL Server-Dezimalkürzung: Eine Anleitung
Das Arbeiten mit Dezimalzahlen in SQL Server erfordert oft eine genaue Kontrolle über die Dezimalstellen. Manchmal müssen Sie zusätzliche Ziffern entfernen, ohne dass es zu einer Rundung kommt. Während die ROUND()
-Funktion von SQL Server hauptsächlich zum Runden dient, kann sie auch abschneiden.
Zum Abschneiden verwenden Sie die Funktion ROUND()
mit einem dritten Argument ungleich Null. Eine Null an dieser Stelle bedeutet Rundung; Jeder andere Wert führt eine Kürzung durch.
Lassen Sie uns veranschaulichen:
<code class="language-sql">DECLARE @value DECIMAL(18, 2); SET @value = 123.456;</code>
Normalerweise würde @value
auf 123,46 runden. Zum Abschneiden:
<code class="language-sql">SELECT ROUND(@value, 2, 1);</code>
Dies gibt 123,45 zurück, wodurch die zusätzliche Dezimalstelle effektiv abgeschnitten wird.
Funktionssyntax und Parameter
Die Funktion ROUND()
folgt dieser Struktur:
<code class="language-sql">ROUND(numeric_expression, length [ ,function ])</code>
Hier ist eine Aufschlüsselung der Argumente:
Argument | Description |
---|---|
numeric_expression |
The decimal value you want to truncate. |
length |
The desired precision (number of decimal places). Positive values specify decimal places to the right of the decimal point; negative values specify places to the left. |
function |
The operation type. 0 rounds; any non-zero value truncates. |
Wichtige Überlegungen
length
kann positiv oder negativ sein. Positive Werte steuern die Dezimalstellen rechts vom Dezimalpunkt, während negative Werte die Ziffern links davon beeinflussen.function
ist optional; Wenn es weggelassen wird, ist es standardmäßig 0 (Rundung).Diese Methode bietet eine einfache Möglichkeit, Dezimalwerte in SQL Server abzuschneiden, ohne auf komplexere Problemumgehungen zurückgreifen zu müssen.
Das obige ist der detaillierte Inhalt vonWie kann ich Dezimalstellen in SQL Server ohne Rundung abschneiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!