测试有效数字的数值函数。
ISNUMERIC(check-expression)
check-expression
- 要计算的表达式。ISNUMERIC
返回SMALLINT
数据类型。
ISNUMERIC
计算check-expression
并返回下列值之一:
check
表达式是有效数字,则返回1。有效数字可以是数字表达式,也可以是表示有效数字的字符串。 +-+34
这样的数值表达式是有效的数字。check-expression
不是有效数字,则返回0。任何包含非数字字符的字符串都不是有效数字。具有多个前导符号的数字字符串(如‘+-+34’
)不会被计算为有效数字。编码列表始终返回0,即使其元素是有效数字也是如此。空字符串ISNUMERIC(‘’)
返回0。check-expression
为NULL
,则返回NULL
。ISNUMERIC(NULL)
返回NULL
。如果科学记数法指数大于308
(308-(整数数-1
)),ISNUMERIC
会生成SQLCODE-7
,指数超出范围错误。例如,ISNUMERIC(1E309)
和ISNUMERIC(111E307)
都会生成此错误代码。如果小于或等于“1E145”
的指数数字字符串返回1,则大于“1E145”
的指数数字字符串返回0。
ISNUMERIC
函数与ObjectScript $ISVALIDNUM
函数非常相似。但是,当输入值为NULL
时,这两个函数返回不同的值。
在下面的示例中,所有ISNUMERIC
函数都返回1:
SELECT ISNUMERIC(99) AS MyInt,
ISNUMERIC('-99') AS MyNegInt,
ISNUMERIC('-0.99') AS MyNegFrac,
ISNUMERIC('-0.00') AS MyNegZero,
ISNUMERIC('-0.09'+7) AS MyAdd,
ISNUMERIC('5E2') AS MyExponent
1 1 1 1 1 1
如果FavoriteColors
为NULL
,则下面的示例返回NULL
;否则返回0
,因为FavoriteColors
不是数值字段:
SELECT Name,
ISNUMERIC(FavoriteColors) AS ColorPref
FROM Sample.Person
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文系转载,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。