특정 날짜에 해당하는 레코드의 수를 추출하려고하고 있으며, 데이터베이스의 다음 날짜에 해당 user_ids가없는 user_ids를 추출하려고합니다. 이것은 내가 plpgsql를 사용하여 (달성하기 위해 노력하지만, 함수를 정의하고 있지 않다 방법입니다 :plpgsql 오류 : RETURN에 반환 할 함수에 매개 변수를 사용할 수 없습니다.
DO
$BODY$
DECLARE
a date[]:= array(select distinct start_of_period from monthly_rankings where balance_type=2);
res int[] = '{}';
BEGIN
FOR i IN array_lower(a,1) .. array_upper(a,1)-1
LOOP
res:=array_append(res,'SELECT COUNT(user_id) from (select user_id from monthly_rankings where start_of_period=a[i] except select user_id from monthly_rankings where start_of_period=a[i+1]) as b');
i:=i+1;
END LOOP;
RETURN res;
$BODY$ language plpgsql
오류가 발생합니다 : 결과를 검색 할 수 없습니다 : ERROR : RETURN 무효 LINE을 반환하는 함수에서 매개 변수를 가질 수 없습니다 11 : RETURN res; 이 절차 언어에 익숙하지 않아 함수가 void를 반환하는 이유를 알 수 없습니다. 변수에 값을 할당하고 NULL이 아닌 빈을 선언했습니다. 구문이나 더 중요한 추론이 있습니까? 실수는 무엇입니까?