Nur 2 Nachkommastellen in SQL Statemant

Hallo zusammen,

ich hoffe es kann mir jemand helfen.
Ich machte eine Rechnung in einer SQL Abfrage und das Ergebnis wird ausgegeben. Leider ist das Ergebis 90.872742837648236487
Ich hätte aber gerne 90.87 !!

Ich denke ihr versteht was ich meine

Hier Anfang meines SQL Statments:
select Tablespace_Name, (df_bytes - free_bytes) / df_bytes *100 Prozent from dba_tablespaces
Nochmal - das SQL funktioniert - nur die Ausgabe ist unleserlich - Prozent sollte nur 2 Nachkommastellen haben.

Hat jemand eine Idee …

Hallo,
du hast zwar deine datenbank nicht erwähnt, aber es sollte in jedem SQL-Dialekt so etwas wie round() geben, also

select round(blabla, 2) from blub;

HTH, muzel

Hallo zusammen,

ich hoffe es kann mir jemand helfen.
Ich machte eine Rechnung in einer SQL Abfrage und das Ergebnis
wird ausgegeben. Leider ist das Ergebis 90.872742837648236487
Ich hätte aber gerne 90.87 !!

Hallo,

Du kannst,analog einem Datumswert, auch Nummerische Daten formatieren. In deinem Fall wäre dies :

select to_char(90.872742837648236487,‚9999D00‘) from dual

–> 90.87

Gruss

Hallo Jan,

Ich machte eine Rechnung in einer SQL Abfrage und das Ergebnis
wird ausgegeben. Leider ist das Ergebis 90.872742837648236487
Ich hätte aber gerne 90.87 !!

ich tippe mal auf Oracle als RDBMS - mit to_char() kannst du die Zahl in ein von dir gewünschtes Ausgabeformat konvertieren, z.B. wie in

select 
 to\_char(97.897654321, '99.99')
from 
 dual;

gruss
bernhard

Super - vielen vielen dank - wenn man weiss wie es geht ist es ganz einfach.

Gruß Jan

Hi!

ich tippe mal auf Oracle als RDBMS - mit to_char() kannst du
die Zahl in ein von dir gewünschtes Ausgabeformat
konvertieren

Unter Oracle würde ich trotzdem round (oder ceil oder floor für Integer) nehmen, zum Abschneiden trunc - damit erspar ich mir ein Umformatieren (sofern ich keine vordefinierte Ausgabemaskierung benötige)

(An Dein Beispiel angelehnt)

SQL\>select round(97.897654321,2) zahl from dual;
ZAHL
--------
97.9




SQL\>select ceil(97.897654321) zahl from dual;
ZAHL
--------
98





SQL\>select floor(97.897654321) zahl from dual;
ZAHL
--------
97





SQL\>select trunc(97.897654321,2) zahl from dual;
ZAHL
--------
97.89

Grüße,
Tomh

Hi Tomh,

ich stimme dir 100% in Bezug auf die Korrektheit der Zahlen zu, aber ich habe das Ursprungsposting so gelesen, dass da noch Text angehängt werden sollte (‚Prozent‘). Beim Umgang mit Strings würde ich mich möglichst nicht auf implizite Konvertierungen (number -> char) verlassen, das geht gerne mal anders als erwartet aus.

gruss
bernhard