사이의 열 비교 모호 :<column> 내가이 포스트 그레스 기능이 작동하려면 두 테이블
CREATE OR REPLACE FUNCTION difference_of_match_ids_in_match_history_and_match_results()
returns table(match_id BIGINT)
as
$$
BEGIN
return QUERY
SELECT *
FROM sports.match_history
WHERE match_id NOT IN (SELECT match_id
FROM sports.match_results);
END $$
LANGUAGE 'plpgsql';
이 혼자 쿼리를 서 잘 작동 :
SELECT *
FROM sports.match_history
WHERE match_id NOT IN (SELECT match_id FROM sports.match_results);
을하지만이 기능에 넣어 때 이것을 다음과 같이 실행 해보십시오 :
select *
from difference_of_match_ids_in_match_history_and_match_results();
나는 이것을 얻습니다 :
SQL Error [42702]: ERROR: column reference "match_id" is ambiguous
Detail: It could refer to either a PL/pgSQL variable or a table column. Where: PL/pgSQL function difference_of_match_ids_in_match_history_and_match_results() line 3 at RETURN QUERY
나는이 같은 오류와 다른 질문을 본 적이, 그리고 그들은, 그러나, 그 예 조인을 사용하면 참조하고 열의있는 인스턴스를 지정하는 서브 쿼리의 이름을 지정 제안 및 내 쿼리는 외부에서 잘 작동 함수의.
열의 이름을 지정해야하는 경우 하나의 하위 쿼리 만 사용하면 어떻게됩니까?
그게 문제가 아니라면, 내가 함수를 정의하는 방식에 문제가 있다고 가정합니다.
작품을 지금. 감사! – Maz