Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Oracle SQL — okrągła — połowa

Dokumentacja pokazuje zastosowany algorytm :

Możesz więc zmodyfikować wersję dodatnią, niezerową:

FLOOR(n * POWER(10, integer) + 0.4) * POWER(10, -integer)
                                 ^

np. dla ustalonego zaokrąglania i ignorowania na razie zer/ujemnych:

with t (my_number) as (
  select 3.674 from dual
  union all select 3.675 from dual
  union all select 3.676 from dual
)
select my_number,
  floor(my_number * power(10, 2) + 0.4) * power(10, -2) as round_on_number
from  t;

 MY_NUMBER ROUND_ON_NUMBER
---------- ---------------
     3.674            3.67
     3.675            3.67
     3.676            3.68

Możesz dołączyć zero/ujemne za pomocą wyrażenia case; lub napisz własną funkcję, która zajmie się tym dokładniej.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wstaw plik tekstowy do Oracle za pomocą funkcji Bulk Insert

  2. Połącz Node.js z Oracle na platformie Windows

  3. SSIS Microsoft Connector for Oracle firmy Attunity dla VS2015 nie wyświetla się

  4. Połączenie z bazą danych Zawsze rozłączaj się podczas programowania na tym samym komputerze co DB

  5. Jak przeprowadzić instalację instancji EBS 12.2 Vision