Führende Null wird nicht angezeigt

tobiastt

Erfahrenes Mitglied
Hallo

in meiner Oracle DB werden führende Nullen nicht angezeigt was kann ich da machen?

create table t (
2 a number(10,10),
3 b number(20));

insert into t values(0.123456,88);

select * from t;

A B
---------- ----------
.123456 88

wie Ihr seht .123456 ?

Dank euch

Tobi
 
verwende to_char()

etwa

SELECT to_char( Zahlenspalte, '99990.9999') from

Damit kannst Du Zahlen formattieren.

die 0 bei den ganzen Neunen gibt an, dass eine führende Null gewünscht ist.

Mit to_char( Zahlenspalte, '00000.0000') würdest Du bspw. entsprechend immer fünf führende und vier nach dem Komma erhalten.

vop
 
Hallo!

Code:
SQL> select 0.12345 as DEC_VALUE from dual;

 DEC_VALUE
----------
    .12345

SQL> COL DEC_VALUE FORMAT 0.00000
SQL> select 0.12345 as DEC_VALUE from dual;

DEC_VALUE
---------
  0.12345

SQL>

Gruß Tom
 
Hallo

vielen Dank für eure Mühe aber es funktioniert nicht. Sicherlich, weil in meiner Tabelle noch char Werte sind und wenn ich die Abfrage select * as DEC_VALUE ... mache geht es nicht.

Gibts da noch ne andere Lösung

Gruß Tobi
 
Hi, select * as DEC_VALUE kann auch nicht funktionieren. Du musst schon angeben, welche Spalte gemeint ist.
Und was meinst du mit in deiner Tabelle sind noch Char-Werte. Sind damit noch noch zusätzliche Spalten gemeint oder hast du in den NUMBER-Spalten Character gespeichert. :confused:

mfg
 
Hallo

ja ich meinte da sind noch weitere Werte. Ja das ist schlecht wenn ich * nicht nutzen kann, da muss ich ja alle Spaltennamen angeben ? :-(

Trotzdem Danke

Gruß Tobias
 
select to_char(Feldname,'0D0000') from dual;

to_char wandelt zu Character
hinter dem Feldnamen wird das Format angegeben
0 für alle Stellen ohne Wert eine 0 anzeigen, z.B.: .123 wird zu 0.1230
9 würde nur das Format angeben z.B.:
bei 999G990D0000 und der Zahl 1234.567 wird zu 1.234,5670
oder die Zahl .0123 wird zu 0.0123

G ist das Tausendertrennzeichen
D das Dezimaltrennzeichen
(oder umgekehrt, bin mir nicht ganz sicher)

Das ganze würder auch mit Datum usw. funktionieren
to_date(to_char(FELD,'DD.MM.RRRR'))
Zeit:
to_date(to_char(FELD,'HH24:MM:SS'))


Mfg
Andi
 
Zuletzt bearbeitet:
Hallo Ich habe das gleiche Problem und wenn ich den Wert mit to_cahr umwandle bekomme ich in Excel immer nur ###### ausgeworfen.
 
dann ist in Excel das Feld zu klein bzw. die Formatierung falsch.
Exportiert das ganze doch mal als CSV Datei und schaut euch die Werte an
 

Neue Beiträge

Zurück