当前位置: 首页 > 面试题库 >

检查字符串的约束以仅包含数字。(Oracle SQL)

端木高卓
2023-03-14
问题内容

我有一列,说PROD_NUM,其中包含一个用零填充的“数字”。例如001004569。它们都是9个字符长。

我不使用数字类型,因为对数字的常规运算对这些“数字”没有意义(例如PROD_NUM * 2没有任何意义。)而且由于它们的长度相同,因此该列定义为CHAR(9)

CREATE TABLE PRODUCT (
    PROD_NUM CHAR(9) NOT NULL
    -- ETC.
)

我想限制PROD_NUM,以便它只能包含九位数字。没有空格,除了‘0’到‘9’之外没有其他字符


问题答案:
REGEXP_LIKE(PROD_NUM, '^[[:digit:]]{9}$')


 类似资料:
  • 问题内容: 我想检查a是否仅包含数字。我用这个: 但意识到它也允许和。基本上,我要确保只能包含数字,而不能包含其他字符。由于和都是数字,所以不是正确的方法。也许我需要一个正则表达式?有小费吗? 问题答案: 怎么样

  • 问题内容: 这个想法是读取String并确认它不包含任何数字字符。因此,“ smith23”之类的内容将不被接受。 问题答案: 你想要什么?速度还是简单?为了提高速度,请选择基于循环的方法。为简单起见,请使用一种基于内衬RegEx的方法。 速度 简单

  • 使用。但仍不确定为什么上面的方法不起作用。 不管怎样,多亏了之前有人建议这个答案。:)

  • 问题内容: 例如,当我拆分字符串时,我想检查一下我的第一部分是否仅包含数字和小数点。 我做了以下 但这仅检查数字而不是小数。如何在其中检查小数?例如,我想检查0.12.13.14是否可以正常工作,而像0.12.13.14x这样的东西将无法工作。 问题答案: 在正则表达式中添加点字符,如下所示: 该是允许多个数字/小数点。 在情况下,至少一个数字/小数点是必需的,代替具有用于一个或多个出现。 编辑:

  • 所以我基本上需要确保字符串只包含数字,如果它包含非数字的方法,就什么也不做。我的问题是,如果一个数字串中有一个随机字符,即“0343A45645”,它仍然会设置方法。感谢您的帮助,谢谢!

  • 问题内容: 我发现的大多数问题都偏向于他们正在寻找数字中的字母这一事实,而我正在寻找我想成为无数字符串的数字。我需要输入一个字符串,并检查它是否包含任何数字以及是否确实拒绝它。 仅当所有字符均为数字时,该函数才返回。我只想看看用户是否输入了一个数字,例如“我拥有一只狗”之类的句子。 有任何想法吗? 问题答案: 你可以像这样使用函数和函数 另外,你可以使用正则表达式,如下所示