Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Zahlen berechnen und runden im Paradox SQL Modul (https://www.delphipraxis.net/214149-zahlen-berechnen-und-runden-im-paradox-sql-modul.html)

RobertW 24. Nov 2023 11:07

Datenbank: SQL • Version: unbekannt • Zugriff über: BDE

Zahlen berechnen und runden im Paradox SQL Modul
 
Hallo Leute,

Ich wäre als der Neuer hier und hab so ziemlich sehr wenig Ahnung von SQL und bitte um Eure Hilfe. :)

Aufgabe:
Tabelle "Abrechnung"- Zahlen mit 2 Dezimalstellen in einer Spalte (Betrag) um X% vermindern und das Ergebis auf die erste Kommastelle runden.

Bsp: 61,10 um 20% reduziert ergibt 48,88 -> das Ergebnis soll aber auf 48,90 gerundet werden.

Was ich habe:
Code:
Update Abrechnung
set
Betrag= Cast(CAST(Betrag*(100-20) AS Integer) as Float)*0.01
where
Abrechnungsdatum between 'dd.mm.yyyy' and 'dd.mm.yyyy' and Betrag > 0
Dieser Befehl bringt mir aber eben den "falschen" Wert mit 48,88 als Ergebnis.

Was ich weiter habe:
Code:
Update Abrechnung
set
Betrag= Cast(CAST(Betrag*(100-20)*0.1 AS Integer) as Float)*0.1
where
Abrechnungsdatum between 'dd.mm.yyyy' and 'dd.mm.yyyy' and Betrag > 0
Hier beköme ich zwar immer die Zahl als '##,#0' dargestellt, aber immer nur nach unten gerundet bzw. berechnet - was mathematisch natürlich falsch ist.

Es gibt doch einen Befehl ROUND, dieser wird aber angeblich nicht in Delphi 5 funktionieren.
Es handelt sich dabei um eine uraltes Programm das aber immer noch verwendet wird.

Könnte man vielleicht das Ergebnis der 5-Reduktion mit 100 multiplizieren, die letzte Ziffer dieser Zahl auf 0 ändern und dann wieder durch 100 dividieren um die Kommastellen zu erhalten? :?

Habt ihr eine Idee wie ich das lösen könnte?

Danke und LG.
Robert


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz