2010-12-21 15 views
0

auf die zweite Dezimalstelle abzurunden, basierend auf 3+ Dezimalstellen. Ich versuche herauszufinden, wie man im Grunde einen "Floor" -Aufruf basierend auf einer bestimmten Dezimalstelle im Gegensatz zu einem ganzen Wert erstellt. Im Folgenden finden Sie eine Tabelle der tatsächlichen Werte und das gewünschte Ergebnis:Es ist möglich, in MySQL

=========|========= 
3.125 | 3.12 
4.187 | 4.18 
1.212 | 1.21 
5.999 | 5.99 

Ist dies mit MySQL möglich? Die Verwendung der Rundenfunktion bis zur 2. Dezimalstelle ergibt "schlechte" Daten und das Runden auf die dritte Dezimalstelle erreicht das Ziel ebenfalls nicht.

Antwort

3

Verwenden Sie die TRUNCATE function:

SELECT TRUNCATE(3.125, 2) 

Ausgang:

3.12 
+0

+1 Für die Einführung dieser Funktion zu mir;) –

1

Können Sie mit 100 und Boden multiplizieren und dann durch 100 dividieren? Wie

Boden (Wert * 100)/100

+0

MrTippet - Ihre Lösung funktioniert gut und Ich mag das Konzept, ging einfach mit OMG Ponies Lösung, weil es eine Möglichkeit war, die Antwort zu geben (und einfach zu finden und durch meine vorhandene round() Funktion zu ersetzen) – JM4

Verwandte Themen