我有一个像这样的功能,该功能检查适当的帐户类型:
CREATE OR REPLACE FUNCTION acc_is_exclusive(acc_no integer, acc_type char) RETURNS integer AS $$
BEGIN
RETURN (SELECT 1 FROM account WHERE account_no = acc_no AND account_type = acc_type);
END;
$$ LANGUAGE plpgsql;
返回类型为整数,如果没有记录,则返回NULL。真的有道理吗?或者我需要以某种方式明确声明返回类型将为整数或null?
SQL标准说:
每个数据类型都包含一个特殊的值,称为空值,有时用关键字表示
NULL
。
所以,不用说,你可以返回NULL
作为一个integer
结果,因为NULL
对任何数据类型的有效值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句