Mittwoch, März 16, 2011

numwidth

Schon erstaunlich, wie viele Dinge es gibt, die ich über sqlplus nicht weiß - obwohl ich das Tool seit zehn Jahren nahezu täglich nutze. Vor kurzem hatte Eddie Awad ein paar recht interessante show-Optionen erwähnt, aber viel überraschender war für mich, dass sqlplus Nachkommastellen nur bis zu einer bestimmten Anzahl darstellt. Bisher habe ich offenbar nie mehr Stellen als den default-Wert (10) benötigt ...

drop table number_test;

create table number_test (a number (13,12));

insert into number_test values (.99999);
insert into number_test values (.999999);
insert into number_test values (.9999999);
insert into number_test values (.99999999);
insert into number_test values (.999999999);
insert into number_test values (.9999999999);
insert into number_test values (.99999999999);
insert into number_test values (.999999999999);
insert into number_test values (.9999999999999);
insert into number_test values (.99999999999999);
insert into number_test values (.999999999999999);
select length(a), vsize(a), a from number_test;

set numwidth 12

select length(a), vsize(a), a 
  from number_test;

   LENGTH(A)     VSIZE(A)            A
------------ ------------ ------------
           6            4       ,99999
           7            4      ,999999
           8            5     ,9999999
           9            5    ,99999999
          10            6   ,999999999
          11            6  ,9999999999
          12            7 ,99999999999
          13            7            1
           1            2            1
           1            2            1
           1            2            1

11 Zeilen ausgewählt.

set numwidth 8

select length(a), vsize(a), a 
  from number_test;

LENGTH(A) VSIZE(A)        A
--------- -------- --------
        6        4   ,99999
        7        4  ,999999
        8        5 ,9999999
        9        5        1
       10        6        1
       11        6        1
       12        7        1
       13        7        1
        1        2        1
        1        2        1
        1        2        1

11 Zeilen ausgewählt.

Keine Kommentare:

Kommentar veröffentlichen