我有一个函数,理论上,当输入是城市名称时,它会给予国家名称:
CREATE OR REPLACE FUNCTION public.country_by_city(city varchar, OUT Country varchar)
RETURNS varchar
LANGUAGE SQL AS
$function$
SELECT c.country
FROM country c
JOIN city c2 ON c2.country_id = c.country_id
WHERE c2.city = $1
$function$
;
如果我将www.example.com更改c2.city为c2.city_id,但当我试图调用其中包含varchar
列的函数时,它可以工作,例如:
SELECT public.country_by_city(Abha);
我得到这个错误:
SQL错误[42703]:您访问的页面不存在!
我尝试使用UPPER()
或INITCAP()
,但没有帮助。值得一提的是,city表中的城市名称记录的首字母都大写。
1条答案
按热度按时间qyuhtwio1#
您需要使用简单的引号调用此参数,例如: