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

Model formatu liczb TO_Char w Oracle

Pamiętaj, że przekształcasz liczbę w ciąg. Liczba nie ma sensu „”, ani „”. czy cokolwiek - jest to liczba.

Sztuczka polega na tym, aby uzyskać TO_CHAR funkcja konwertująca liczbę wewnętrzną na reprezentację ciągu, którą chcesz. Jest kilka problemów, o które należy się martwić:uzyskanie poprawnego punktu podstawy (dziesiętnego) i radzenie sobie z dopełnieniem.

Oto działający przykład:

SELECT to_char(0.00235,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

0,00235

SELECT to_char(156.45823,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

156,45823

SELECT to_char(-0.0235,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

-0,0235

SELECT to_char(-156.45623,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

-156,45623

SELECT to_char(123456789.45623,'FM99999999999999990D99999', 'NLS_NUMERIC_CHARACTERS = '',.''') FROM DUAL;

123456789,45623

Odpowiednie części maski:

FM służy do przycinania początkowych i końcowych spacji, których Oracle zwykle używa do uzupełniania liczb.

D jest punktem podstawy, w zależności od ustawień NLS.

NLS_NUMERIC_CHARACTERS ... jest nadpisaniem lokalnych ustawień NLS — może to nie być konieczne, jeśli w ustawieniach regionalnych używa się przecinka jako miejsca dziesiętnego, ale jest to sposób na wymuszenie takiego zachowania w bazie danych z, powiedzmy, ustawieniami północnoamerykańskimi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. W jakiej kolejności instrukcja aktualizacji Oracle SQL zmienia wartości kolumn?

  2. Oracle „INSERT ALL” ignoruje duplikaty

  3. Konfiguracja wielu baz danych dla wersji Spring Data JPA 2.0.9

  4. Wyłączanie i uruchamianie instancji Oracle

  5. SQL - Policz liczbę zmian w uporządkowanej liście