免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6849 | 回复: 4
打印 上一主题 下一主题

plsql中有没有判断某个字段是否是数字的函数 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-09-13 15:34 |只看该作者 |倒序浏览
有心自己写个函数,但觉得很不爽,oracle提供这样的功能么

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2004-09-13 20:28 |只看该作者

plsql中有没有判断某个字段是否是数字的函数

没有吧,
可以这样变通一下:
用to_number函数,然后判断是否exception

论坛徽章:
0
3 [报告]
发表于 2004-09-14 13:50 |只看该作者

plsql中有没有判断某个字段是否是数字的函数

检查这个字段是不是数字类型的不就行了

论坛徽章:
0
4 [报告]
发表于 2010-10-03 13:21 |只看该作者
create or replace PROCEDURE
  JUDGE_NUMBER(p_STR VARCHAR2,p_pose out pls_integer,p_char out varchar2)
is
   -- Author  : 青云
  -- Created : 2010-10-02 15:37:17
  -- Purpose : 判断字符串是否为纯数字,如果不是,返回位置和字符;如果是,返回0

  
begin
  
  WITH A AS
   (SELECT LEVEL lvl, substr(p_STR, LEVEL, 1) AS chr
   
      FROM dual
    CONNECT BY LEVEL <= length(p_STR))
  
  SELECT  lvl ,chr into p_pose,p_char
    FROM A
   WHERE chr NOT IN (SELECT TO_CHAR(LEVEL - 1) AS X
                     FROM DUAL
                   CONNECT BY LEVEL <= 10)
    AND ROWNUM=1;
                  
  exception
    when no_data_found then
      p_pose:=0;
     

end JUDGE_NUMBER;

论坛徽章:
0
5 [报告]
发表于 2010-10-05 09:15 |只看该作者
你可以自己写一个存储过程来判断字段中每个字符是否为数字啊(在0到9之间),我在之前的公司时就碰到过判断条码中是否有数字的存储过程 。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP