亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Oracle 中 isnumeric 的三種實現

發布時間:2020-03-09 22:36:16 來源:網絡 閱讀:402 作者:沙漏半杯 欄目:編程語言

使用過 asp 的應該對 isnumeric 函數不會陌生,這是一個常用的判斷入參是否為數字的函數。在 oracle 中沒有現成的判斷是否為數字函數,下面就用三種方法來實現: 


1. 利用 to_number?

CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2)?

? ?RETURN NUMBER?

IS?

? ?v_str FLOAT;?

BEGIN?

? ?IF str IS NULL?

? ?THEN?

? ? ? RETURN 0;?

? ?ELSE?

? ? ? BEGIN?

? ? ? ? ?SELECT TO_NUMBER (str)?

? ? ? ? ? ?INTO v_str?

? ? ? ? ? ?FROM DUAL;?

? ? ? EXCEPTION?

? ? ? ? ?WHEN INVALID_NUMBER?

? ? ? ? ?THEN?

? ? ? ? ? ? RETURN 0;?

? ? ? END;?


? ? ? RETURN 1;?

? ?END IF;?

END isnumeric;?


2. 利用 regexp_like?

CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2)?

? ?RETURN NUMBER?

IS?

BEGIN?

? ?IF str IS NULL?

? ?THEN?

? ? ? RETURN 0;?

? ?ELSE?

? ? ? IF regexp_like (str, '^(-{0,1}+{0,1})[0-9]+(.{0,1}[0-9]+)$')?

? ? ? THEN?

? ? ? ? ?RETURN 1;?

? ? ? ELSE?

? ? ? ? ?RETURN 0;?

? ? ? END IF;?

? ?END IF;?

END isnumeric;?


3. 利用 TRANSLATE?

CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2)?

? ?RETURN NUMBER?

IS?

? ?v_str VARCHAR2 (1000);?

BEGIN?

? ?IF str IS NULL?

? ?THEN?

? ? ? RETURN 0;?

? ?ELSE?

? ? ? v_str := TRANSLATE (str, '.0123456789', '.');?


? ? ? IF v_str = '.' OR v_str = '+.' OR v_str = '-.' OR v_str IS NULL?

? ? ? THEN?

? ? ? ? ?RETURN 1;?

? ? ? ELSE?

? ? ? ? ?RETURN 0;?

? ? ? END IF;?

? ?END IF;?


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

金阳县| 右玉县| 都匀市| 西乌珠穆沁旗| 门源| 界首市| 呼伦贝尔市| SHOW| 武宁县| 改则县| 阿城市| 清镇市| 莱芜市| 龙川县| 建阳市| 扶沟县| 蒙阴县| 恩平市| 台山市| 平潭县| 南昌市| 北安市| 探索| 柳林县| 灌云县| 阿鲁科尔沁旗| 德令哈市| 金平| 萨迦县| 徐闻县| 宝山区| 峨山| 阳江市| 太仆寺旗| 玉门市| 衡阳市| 南开区| 连城县| 巫山县| 清水河县| 抚州市|