我正在写一个可能经常使用一些常量变量的函数,所以我打算在函数上面定义它们,就像这样:
\set MAX 10.0
\set MIDDLE 5.0
\set LOW 3.0
\set MIN 1.0
\set RATING_MAX 5
\set RATING_MIN 0
CREATE OR REPLACE FUNCTION calculate_rating() RETURNS integer AS $$
DECLARE
power_5hr double precision;
rating integer;
BEGIN
IF power_5hr >= :MAX THEN
rating := :RATING_MAX;
-- .... others
END IF;
RETURN rating;
END;
$$ language plpgsql;
但是我收到了一个错误:语法错误在或附近":" 这表明我不能使用:MAX这种方式。如果我将MAX更改为10.0,则可以正常工作。
你能分享我应该做些什么来实现这个目标吗?非常感谢。