VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

ISNUMERIC

功能描述

ISNUMERIC函数用于判断表达式是否为有效的数值类型。

若表达式的计算结果为有效的数值数据类型则返回 1 ;否则返回 0 。有效的数值类型包括如下项:

区域 数字数据类型
精确数字 bigint、int、smallint、tinyint、bit
固定精度 decimal、numeric
近似 float、real
货币值 money、smallmoney

注意事项

该功能仅在数据库兼容模式为SQL Server时支持(即数据库实例初始化时指定DBCOMPATIBILITY='MSSQL')。

语法格式

ISNUMERIC ( expression )

参数说明

expression

要计算的表达式。

返回值

INT类型,0 或 1。

示例

示例1: 输入任意精度类型,调用isnumeric函数判断数值类型是否有效。

select isnumeric(123456.122331) r1;

返回结果如下:

 r1
----
  1
(1 row)

示例2: 在FUNCTION中调用isnumeric函数判断结果有效性。

1、创建function。

CREATE OR REPLACE FUNCTION custom_function(a int) RETURNS void AS $$
BEGIN
RAISE NOTICE 'result %', a;
END;
$$ LANGUAGE plpgsql;

2、调用function。

select custom_function(isnumeric(123));
select custom_function(isnumeric('123a'));

结果返回如下:

NOTICE:  result 1
CONTEXT:  referenced column: custom_function
 custom_function
-----------------

(1 row)

NOTICE:  result 0
CONTEXT:  referenced column: custom_function
 custom_function
-----------------

(1 row)