我有一列,说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}$')