教程中国
PHOTOSHOP CS9.0中文版 MAYA 8.5 FOR WINDOWS Corel Painter v9.0 Flash MX2004 中文版 Illustrator cs2 中文版
VC++6.0含sp6 中英文版 VB6.0 +sp6 简体中文版 Borland Delphi 7汉化版 MSDN for vb6.0中文版 Visual Studio 2005简体
教程中国下属 文件存储共享专家BIBIDU.COM 提供大型软件,教材,源码,电影,音乐,图书等下载 更多精品请点此进入
  您目前所在位置: 教程中国 >> Oracle >> 备份恢复 >> 一个有用的东西:如何将数字转换为大写英文金额 RSS订阅
一个有用的东西:如何将数字转换为大写英文金额
教程(视频,书籍)下载:  ASP.NET AutoCAD 数据库 C# ASP java photoshop 网页设计 delphi 3dmax Flash C++ VB 张孝祥 实例   更多请进入BIBIDU搜索
IT搜索引擎   

  create or replace function tcos_spell_number( p_number in number )
  return varchar2
  -- CopyRight Toshiba Shenzhen Han Fangquan 2002.04.10
  as
  type myArray is table of varchar2(255);
  l_str myArray := myArray( '',
  ' Thousand ', ' Million ',
  ' Billion ', ' Trillion ',
  ' Quadrillion ', ' Quintillion ',
  ' Sextillion ', ' Septillion ',
  ' Octillion ', ' Nonillion ',
  ' Decillion ', ' Undecillion ',
  ' Duodecillion ' );
  l_num varchar2(50) default trunc( p_number );
  h_number number;
  l_return varchar2(4000);
  begin
  h_number := round(p_number*100)/100;
  for i in 1 .. l_str.count
  loop
  exit when l_num is null;
  
  if ( substr(l_num, length(l_num)-2, 3) <> 0 )
  then
  l_return := to_char(
  to_date(
  substr(l_num, length(l_num)-2, 3),
  'J' ),
  'Jsp' ) || l_str(i) || l_return;
  end if;
  l_num := substr( l_num, 1, length(l_num)-3 );
  end loop;
  -- add Dollars string. Han Fangquan
  -- Han Fangquan modified begin
  if l_return is null then l_return := 'Zero' ;
  end if;
  -- p_number >1 then add Dollars else Add Dollar.
  if trunc( h_number )>1
  then
  l_return := l_return || ' Dollars ';
  else
  l_return := l_return || ' Dollar ';
  end if;
  
  if to_char( h_number ) like '%.%'
  then
  l_num := substr(h_number,instr(h_number,'.')+1);
  if length(l_num)=1
  then
  l_num := l_num || '0';
  end if;
  if l_num > 0
  then
  if l_num > 1
  then
  l_return := l_return ||'And '||l_num||' Cents ';
  else l_return := l_return ||'And '||l_num||' Cent ';
  end if;
  end if;
  end if;
  -- end (Han Fangquan modified )
  /*
  -- beginning of section added to include decimal places:
  if to_char( h_number ) like '%.%'
  then
  l_num := substr( h_number, instr( h_number, '.' )+1 );
  if l_num > 0
  then
  l_return := l_return || ' point';
  for i in 1 .. length (l_num)
  loop
  exit when l_num is null;
  if substr( l_num, 1, 1 ) = '0'
  then
  l_return := l_return || ' zero';
  else
  l_return := l_return
  || ' '
  || to_char(
  to_date(
  substr( l_num, 1, 1),
  'j' ),
  'jsp' );
  end if;
  l_num := substr( l_num, 2 );
  end loop;
  end if;
  end if;
  */
  
  -- end of section added to include decimal places
  -- Han if the length fo l_trun less than 100 ,i will add **
  -- if length(l_return) < 100
  -- then
  -- l_return := l_return ||
  -- substr('****************************************************************************************************',
  -- length(l_return)-1) ;
  -- end if;
  l_return := l_return||'*************';
  return l_return;
  end tcos_spell_number;
  

来源:upschool.com.cn
作者:
关键字:有用,东西,如何将数字转换为,写英文金额
发表日期:2007-1-6 0:44:20

网页显示有限 阅读全文请下载本文完整版WORD文档

上一篇:在unix下定时执行oracle的sql方法   下一篇:NULL 小议


2008-12-2 4:23:16
本文的相类似文章
  • 如果天下无贼,什么东西会没有用?
  • 预载Gif的2个JS代码(非常有用)
  • ASP 编程中20个非常有用的例子
  • 对刚接触oracle的人比较有用的一些工具
  • 如何用sendmail给系统所有用户送信
  • 如何用sendmail给系统所有用户送信
  • 一些有用的程式
  • 一个有用的东西:如何将数字转换为大写英文金额
  • linux上用户、用户组及私有用户组
  • Useful SQL reference 一些有用的SQL
  • 在学习中进步 在进步中成长 教程中国相随您的成长之路
    华腾联合科技股份有限公司版权所有
    广告联系:Rosibo@163.com