当前位置: 首页 > 知识库问答 >
问题:

Postgresql错误没有与给定名称和参数类型匹配的函数。您可能需要添加显式类型转换

西门逸仙
2023-03-14
declare r double precision; b double precision; c double precision;
begin

  r:=9.2;
  b:=2.3;
  c:=r/b;

  select log(2.7, c);
  ...

但这段代码有一个错误:

错误:函数log(数值,双精度)不存在行1:select log(2.7,c)

提示:没有函数与给定的名称和参数类型匹配。您可能需要添加显式类型转换。

查询:select log(2.7,c)context:pl/pgsql function inline_code_block line 11 at SQL语句SQL state:42883

共有1个答案

洪宏硕
2023-03-14

如手册中所述,具有两个参数log()函数需要numeric而不是double precision

do
$$
declare
  r numeric; 
  b numeric; 
  c numeric;
  result numeric;
begin

  r:=9.2;
  b:=2.3;
  c:=r/b;

  result := log(2.7, c);
  raise notice 'Result %', result;
end;
$$
 类似资料: