TRUNC(Number,-1) : TRUNC « Numeric Math Functions « Oracle PL / SQL






TRUNC(Number,-1)



SQL>
SQL>
SQL>
SQL> -- create demo table
SQL> create table TestTable(
  2    ID                 VARCHAR2(4 BYTE)         NOT NULL,
  3    MyName             VARCHAR2(10 BYTE),
  4    MyDate             DATE,
  5    MyNumber           Number(8,2)
  6  )
  7  /

Table created.

SQL>
SQL>
SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values('1','Alison',to_date('19960711','YYYYMMDD'),12.12);

1 row created.

SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values('1','Alison',to_date('19970622','YYYYMMDD'),-12.12);

1 row created.

SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values('1','Alison',to_date('19980513','YYYYMMDD'),22.1);

1 row created.

SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values('1','Alison',to_date('19990624','YYYYMMDD'),-2.12);

1 row created.

SQL> insert into TestTable (ID, MyName, MyDate, MyNumber) values('1','Alison',to_date('20000415','YYYYMMDD'),2.1);

1 row created.

SQL>
SQL> select * from TestTable;

ID   MYNAME     MYDATE      MYNUMBER
---- ---------- --------- ----------
1    Alison     11-JUL-96      12.12
1    Alison     22-JUN-97     -12.12
1    Alison     13-MAY-98       22.1
1    Alison     24-JUN-99      -2.12
1    Alison     15-APR-00        2.1

SQL>
SQL> SELECT ID, ROUND(MyNumber,-1), TRUNC(MyNumber,-1) FROM TestTable;

ID   ROUND(MYNUMBER,-1) TRUNC(MYNUMBER,-1)
---- ------------------ ------------------
1                    10                 10
1                   -10                -10
1                    20                 20
1                     0                  0
1                     0                  0

SQL>
SQL> drop table TestTable;

Table dropped.

SQL>
SQL>
           
       








Related examples in the same category

1.TRUNC(x [, y]) Returns the result of truncating x an optional y decimal places
2.TRUNC() returns its argument truncated to the number of decimal places specified with the second argument.
3.The value 109.29 was truncated to the single digit on the left side of the decimal point
4.TRUNC: Returns the truncated value (removes decimal part of a number, precision adjustable)
5.TRUNC with precision
6.TRUNC(44.647, 0)
7.TRUNC(44.647, -1)
8.TRUNC(Number,1): truncate values from a column
9.select trunc( 12345.67890 )
10.select trunc( 12345.67890, 2 )
11.Use TRUNC in PL/SQL
12.TRUNC Demo