Oracle
 sql >> база данни >  >> RDS >> Oracle

как да покажа числова стойност с думи

И така, как работи заявката? Ето защо:

select to_char(to_date(:number,'j'),'jsp') from dual;

Ако погледнете най-вътрешната част на заявката to_date(:number,'j'), 'j' или J е юлианската дата (1 януари 4713 г. пр.н.е.), основно тази дата се използва за астрономически изследвания.

Така че to_date(:number,'j') взема числото, представено от число и се преструва, че е юлианска дата, преобразува в дата.

Ако прехвърлите 3 на число, така че то ще преобразува датата на 3 януари 4713 г. пр.н.е., това означава, че 3 се добавя към юлианската дата.

select to_char(to_date(3,'j'),'jsp') from dual;

Сега to_char(to_date(3,'j'),'jsp'), jsp =Сега; вземете тази дата(to_date(3,'j')) и изпишете юлианското число, което представлява, резултатът е:

TO_CH
-----
three

Има ограничение при използване на юлиански дати, то варира от 1 до 5373484. Ето защо, ако поставите стойностите след 5373484, ще ви изведе грешка, както е показано по-долу:

ORA-01854: julian date must be between 1 and 5373484

Здравейте на всички, тази тема е интересна. Спомням си, когато учех Oracle през 2005 г., един от инструкторите ме изиска да напиша PL/SQL код за преобразуване на числа в думи, кодът беше цели две страници, за да се постигне това.

Ето малко препратка, която може да ни помогне да разберем Юлианския ден, затова използваме буквата „j“ или „J“ по време на тази операция.

Първо има уебсайт, който има пример и обяснение за „Как да конвертирате число в думи с помощта на Oracle SQL Query“:

http://viralpatel.net/blogs/convert- number-into-words-oracle-sql-query/

Второ, ако искате да научите повече за „Юлианския ден“, отидете на:

http://en.wikipedia.org/wiki/Julian_day

Трето, ако искате да научите повече за това кой е предложил Юлианския ден през 1583 г., това е от "Джозеф Скалигер":

http://en.wikipedia.org/wiki/Joseph_Justus_Scaliger

Няма смисъл да продължавам да повтарям какво е направил друг автор в тези уебсайтове, затова току-що публикувах връзката, която можете да получите достъп до тях и да прочетете това, което ви е необходимо, за да разберете как работи заявка като тази:

SELECT TO_CHAR (TO_DATE (2447834, 'j'), 'jsp') FROM DUAL;

//Изход:два милиона четиристотин четиридесет и седем хиляди осемстотин тридесет и четири



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да използвам името на дяла като параметър в командата за избор?

  2. Как да проверите версията на доставчика на oracle за ole-db. Доставчик на OraOLEDB.Oracle

  3. Не мога да използвам обвързваща променлива в datagrip

  4. Oracle:как да добавя минути към времева марка?

  5. SQL Developer няма да стартира