sql – 如何在单词中显示数字值
问:在Words中显示数字值,输出应如下所示 SAL In_Words --------- ----------------------------------------------------- 800 eight hundred 1600 one thousand six hundred 1250 one thousand two hundred fifty 并且,我仍然没有弄明白,这个查询是如何解决上述输出的. select sal,to_char(to_date(sal,'j'),'Jsp') in_words from emp to_date在这做什么?有人对这个查询有任何想法吗? 解决方法那么查询如何工作?那么这就是原因:select to_char(to_date(:number,'jsp') from dual; 如果你查看查询的最内部部分to_date(:number,’j’),’j’或J是朱利安日期(公元前4713年1月1日),基本上这个日期用于天文研究. 所以to_date(:number,’j’)它取数字所代表的数字并假装它是朱利安日期,转换成日期. 如果您将3传递给数字,那么它将日期转换为公元前4713年1月3日,这意味着将3添加到Julian日期. select to_char(to_date(3,'jsp') from dual; 现在to_char(to_date(3,’jsp’),jsp = Now;取该日期(to_date(3,’j’))并拼写它代表的朱利安数字,输出为: TO_CH ----- three 使用Julian日期时有一个限制,它的范围是1到5373484.这就是为什么如果你把值放在5373484之后,它会抛出一个错误,如下所示: ORA-01854: julian date must be between 1 and 5373484 大家好,这个话题很有意思.我记得当我在2005年学习Oracle时,其中一位教师要求我编写一个PL / SQL代码来转换单词中的数字,这是一个完整的两页代码. 这里有一些参考可以帮助我们理解朱利安日,这就是为什么我们在这个操作中使用字母’j’或’J’. 首先,有一个网站有关于“如何使用Oracle SQL查询将数字转换为单词”的示例和说明: http://viralpatel.net/blogs/convert-number-into-words-oracle-sql-query/ 其次,如果您想了解更多关于“朱利安日”的信息,请访问: http://en.wikipedia.org/wiki/Julian_day 第三,如果你想了解更多关于谁在1583年提出朱利安日数的问题,那就是“Joseph Scaliger”: http://en.wikipedia.org/wiki/Joseph_Justus_Scaliger 我不会继续重复这些网站中的另一位作者所做的事情,这就是为什么我只是发布了你可以访问它们的链接,并阅读了你需要了解如何查询这样的查询的原因: SELECT TO_CHAR (TO_DATE (2447834,'jsp') FROM DUAL; //输出:两百四十四万七千八百三十四 (编辑:上饶站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |