(sql plus) Как предотвратить автоматическое округление в базе данных oracle? - PullRequest
0 голосов
/ 30 апреля 2018

У меня есть значения 33,75, 48,75 и 26,25

так как я могу отобразить их такими, какие они есть, не округляя их до 34, 49 и 26?

SQL> SELECT p.price "Price in SAR"
  2  FROM payment p;

      Price in SAR
      ------------
      49
      49
      34
      26
      26
      26
      34
      49

1 Ответ

0 голосов
/ 01 мая 2018

Я подозреваю, что это связано с типом столбца:

https://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT313

create table t1 (col1 number (5));
insert into t1 values (33.75);
insert into t1 values (48.75);
insert into t1 values (26.25);
insert into t1 values (10.50);
create table t2 (col1 number (5,2));
insert into t2 values (33.75);
insert into t2 values (48.75);
insert into t2 values (26.25);
insert into t2 values (10.50);

select * from t1;

      COL1
----------
        34
        49
        26
        11

SQL> select * from t2;

      COL1
----------
     33.75
     48.75
     26.25
      10.5

SQL> select to_char(col1, '99.99') from t2;

    TO_CHA
    ------
     33.75
     48.75
     26.25
     10.50
...