楼主: zj_zjxiaogu

有没有保留有效数字的函数

[复制链接]
论坛徽章:
7
ERP板块每日发贴之星
日期:2006-05-14 01:01:39生肖徽章:蛇
日期:2006-09-26 21:28:13生肖徽章:鼠
日期:2006-09-07 17:05:56玉兔
日期:2006-09-26 17:30:40生肖徽章:马
日期:2006-09-26 17:35:03生肖徽章:猴
日期:2007-01-25 16:51:27
11#
发表于 2006-10-17 09:11 | 只看该作者
關注ing

使用道具 举报

回复
论坛徽章:
0
12#
发表于 2006-10-17 09:29 | 只看该作者
最初由 hll628 发布
[B]select substr('123.00',1,instr('123.00','.',1))||rpad(substr('123.00',instr('123.00','.',1)+1),5,0) from dual
試試上面的語句,把‘123.00’換成你自己的item [/B]


理解錯誤,當成小數點後保留固定位數了,不好意思

使用道具 举报

回复
论坛徽章:
0
13#
发表于 2006-10-17 10:19 | 只看该作者
关注中................

使用道具 举报

回复
论坛徽章:
0
14#
发表于 2006-10-17 16:17 | 只看该作者
關注ing

使用道具 举报

回复
论坛徽章:
8
15#
发表于 2006-10-17 16:19 | 只看该作者
怎么都是关注,你们有时间的可以自己想想这个函数该怎么写,该关注倒哪几个点啊

使用道具 举报

回复
论坛徽章:
9
ITPUB元老
日期:2005-10-09 14:31:29授权会员
日期:2005-10-30 17:05:33九尾狐狸
日期:2006-04-12 18:38:26会员2006贡献徽章
日期:2006-04-17 13:46:34红孩儿
日期:2006-05-14 16:18:08嫦娥
日期:2007-01-25 16:35:54生肖徽章:马
日期:2007-01-25 16:51:10铁扇公主
日期:2007-01-25 16:56:33会员2007贡献徽章
日期:2007-09-26 18:42:10
16#
发表于 2006-10-17 18:38 | 只看该作者
繼續關注ing

使用道具 举报

回复
论坛徽章:
15
ITPUB元老
日期:2006-12-26 07:41:45懒羊羊
日期:2015-03-04 14:48:16茶鸡蛋
日期:2013-07-15 09:56:182013年新春福章
日期:2013-02-25 14:51:24奥运会纪念徽章:拳击
日期:2012-08-06 22:33:592012新春纪念徽章
日期:2012-01-04 11:49:54紫蛋头
日期:2011-12-14 00:21:42ITPUB十周年纪念徽章
日期:2011-11-01 16:20:28ITPUB8周年纪念徽章
日期:2009-09-27 10:21:212009日食纪念
日期:2009-07-22 09:30:00
17#
发表于 2006-10-17 18:55 | 只看该作者
把水貼都刪了。。。

使用道具 举报

回复
论坛徽章:
8
18#
发表于 2006-10-17 19:39 | 只看该作者
最初由 kenni 发布
[B]把水貼都刪了。。。 [/B]



这个这个我怎么删呢?

使用道具 举报

回复
论坛徽章:
0
19#
 楼主| 发表于 2006-10-24 13:13 | 只看该作者
我写好了,呵呵
CREATE OR REPLACE FUNCTION substr_validate_data(con_str   VARCHAR2,
                                                                                               con_num   VARCHAR2
                                                                                                  )
RETURN NUMBER IS
   n    NUMBER  := 1;
   v_each_data       VARCHAR (100)   := NULL;
   v_return_str   VARCHAR2 (4000) := NULL;
BEGIN
                 LOOP
                    select SUBSTR(con_str,n,1) into v_each_data from dual;
                   EXIT WHEN (v_each_data not in ('0','.') or n > length(con_str));
                   n:= n + 1;
                END LOOP;
               
                select n+con_num-1 into n from dual;
                select substr(con_str,1,n) into v_return_str from dual;
         

   RETURN v_return_str;
   EXCEPTION
     WHEN OTHERS THEN
      RETURN NULL;
END substr_validate_data;
/

使用道具 举报

回复
论坛徽章:
0
20#
发表于 2006-10-24 15:28 | 只看该作者
高人啊
哎,我還在死胡同裡轉著呢
多謝!

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表