0
에서 저장 프로 시저 절 내가포스트 그레스
CREATE OR REPLACE FUNCTION f_tsd(koakuupav date, kolkuupaev date)
RETURNS TABLE (
isikukood int
) AS
$func$
select 1 where current_date between koakuupaev and kolkuupaev
$func$ LANGUAGE sql STABLE;
포스트 그레스 9.3에서 재판 곳이라는 매개 변수를 전달하지만, plpgsql에서 오류
ERROR: column "koakuupaev" does not exist
을 가지고하는 방법은 런타임에 동일한 오류가 발생합니다
Postgres의 where 절에 매개 변수를 전달하는 방법은 무엇입니까? 문서에 따르면 명명 된 매개 변수가 작동해야합니다. 당신이 사용하는 어떤 포스트 그레스 버전
대신
paev
에pav
에e
누락? 필자가 잘못하지 않는다면 SQL 함수 내에서 명명 된 매개 변수를 사용할 수있는 기능이 9.2에 추가되었습니다. 이전 버전을 사용하는 경우 $ 1 및 $ 2를 사용해야합니다. 그러나 어느 경우 든 리턴 된 테이블의 데이터 유형을'integer'로 변경하거나'1'을 숫자 값으로 변환해야합니다 (두 번째 버전에서 문제가되는 것 같습니다) –9.3을 사용하고 있습니다. 워드 프로세서에 따르면 매개 변수가 작동해야합니다. 반환 유형을 정수로 변경했지만 문제가 지속됩니다. – Andrus