濮阳杆衣贸易有限公司

主頁 > 知識庫 > Oracle中判斷字段是否為數(shù)字

Oracle中判斷字段是否為數(shù)字

熱門標(biāo)簽:愛客外呼系統(tǒng)怎么樣 地圖標(biāo)注養(yǎng)老院 哈爾濱電話機(jī)器人銷售招聘 哪個(gè)400外呼系統(tǒng)好 百度地圖標(biāo)注途經(jīng)點(diǎn) 慧營銷crm外呼系統(tǒng)丹丹 圖吧網(wǎng)站地圖標(biāo)注 山東crm外呼系統(tǒng)軟件 開發(fā)外呼系統(tǒng)

  在我們平常的開發(fā)中可能會遇到這樣的問題,就是判斷某一列是否全部由數(shù)字組成,我們都知道oracle并沒有給我們提供這樣一個(gè)現(xiàn)成的函數(shù),那么根據(jù)我的經(jīng)驗(yàn)我總結(jié)了兩個(gè)行之有效的方法(列名:column,表名:table):

1.使用trim+translate函數(shù):

復(fù)制代碼 代碼如下:
select * from table where trim(translate(column,'0123456789',' ')) is NULL;

  這里要注意的是:translate函數(shù)的第三個(gè)參數(shù)是一個(gè)空格,不是'', 因?yàn)閠ranslate的第三個(gè)參數(shù)如果為空的話,那么永遠(yuǎn)返回'',這樣的就不能達(dá)到過濾純數(shù)字的目的。這樣把所有的數(shù)字都轉(zhuǎn)化為空格,如果全部是由數(shù) 構(gòu)成,那么一旦trim后自然是空,實(shí)現(xiàn)了上述目標(biāo)。當(dāng)然如果想排除空項(xiàng)的話,可以這樣寫:

復(fù)制代碼 代碼如下:
select * from table where trim(translate(nvl(column,'x'),'0123456789',' ')) is NULL;--x 表示任何'0-9'以外的字符。

2.使用regexp_like函數(shù):

復(fù)制代碼 代碼如下:
select * from table where regexp_like(column,'^[0-9]+[0-9]$');

  這里要注意的是:regexp_like函數(shù)不是在所有的oracle版本中 都能使用的。regexp_like是oracle支持正則表達(dá)式的四個(gè)函數(shù):regexp_like,regexp_replace,regexp_instr,regexp_substr中的 一個(gè),有關(guān)這方面更加詳細(xì)信息,請關(guān)注相關(guān)文檔。

總結(jié)一下,如果oracle支持regexp_like函數(shù),推薦使用正則的方式,如果不支持則用trim+translate這種方式。

您可能感興趣的文章:
  • oracle刪除表字段和oracle表增加字段
  • oracle使用sql語句增加字段示例(sql刪除字段語句)
  • Oracle 插入超4000字節(jié)的CLOB字段的處理方法
  • oracle關(guān)鍵字作為字段名使用方法
  • 深入淺析mybatis oracle BLOB類型字段保存與讀取
  • 簡單三步輕松實(shí)現(xiàn)ORACLE字段自增
  • oracle數(shù)據(jù)庫中如何處理clob字段方法介紹
  • Oracle 查詢表信息獲取表字段及字段注釋
  • java讀寫oracle的blob字段示例
  • ORACLE中段的HEADER_BLOCK示例詳析

標(biāo)簽:固原 和田 周口 甘肅 承德 開封 武漢 青島

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle中判斷字段是否為數(shù)字》,本文關(guān)鍵詞  Oracle,中,判斷,字段,是否,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle中判斷字段是否為數(shù)字》相關(guān)的同類信息!
  • 本頁收集關(guān)于Oracle中判斷字段是否為數(shù)字的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    军事| 司法| 泰和县| 图木舒克市| 泰宁县| 小金县| 合江县| 灵川县| 临沂市| 勃利县| 治多县| 察哈| 随州市| 五大连池市| 无极县| 文昌市| 健康| 夏津县| 阳东县| 罗山县| 卢氏县| 潼南县| 永宁县| 扬中市| 孙吴县| 开封县| 于都县| 宁德市| 巴林左旗| 全椒县| 阳城县| 阜康市| 平南县| 剑阁县| 治多县| 盐津县| 那坡县| 微博| 北安市| 乡城县| 花莲市|