Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.425 Beiträge
 
Delphi 7 Professional
 
#2

AW: Cast(wert as decimal(10,2))

  Alt 3. Nov 2021, 18:12
Leider schreibst Du nichts dazu, wie die Zahlen im Char(500) gespeichert sind.

Mit Dezimalkomma, mit Dezimalpunkt, Zahlen linksbündig auf Länge x mit 0 aufgefüllt ...

Funtioniert denn überhaupt ein SELECT CAST(WERT AS DECIMAL(10,2)) As OrderByWert FROM S_EINSTELLUNGEN_WERTE WHERE STATUS = 'AktivAND FIXWERT = 6 ?

Warum müssen die Zahlen überhaupt auf Decimal(10,2) getrimmt werden?

Es soll doch nach Zahlen sortiert werden, dabei ist es vollkommen egal, ob und wieviele Nachkommastellen die haben, es sei denn, es soll noch eine implizite Rundung der Zahlen erfolgen.

Mir fallen jetzt nur zwei Varianten ein:

SELECT * FROM S_EINSTELLUNGEN_WERTE WHERE STATUS = 'AktivAND FIXWERT = 6 order by Cast(Wert as numeric)
oder
SELECT * FROM S_EINSTELLUNGEN_WERTE WHERE STATUS = 'AktivAND FIXWERT = 6 order by LPad(Wert,10,'0')

Geändert von Delphi.Narium ( 3. Nov 2021 um 22:10 Uhr) Grund: Schreibfehler ...
  Mit Zitat antworten Zitat