2017-10-13 2 views
1

이 쿼리를 어떻게 만들 수 있습니까?Postgresql이 "스키마가 존재하지 않습니다"라고 말합니다.

prod_id|quan_in_stock|sales 

을 지금, 나는이 쿼리를 실행할 때 :

내가 반환하는 기능 top_movies_ceiling(3)

CREATE OR REPLACE FUNCTION top_movies_ceiling(n_top integer) -- n_top dos mais vendidos 
RETURNS SETOF inventory AS $$ 
BEGIN 
RETURN QUERY 
SELECT * 
FROM inventory 
ORDER BY sales DESC 
LIMIT n_top; 
END; 
$$LANGUAGE plpgsql; 

을했습니다 schema "prod_id" does not exist

:

SELECT products.price 
FROM products 
WHERE products.prod_id = prod_id.top_movies_ceiling(3); 

나는 오류

당신이 나를 도울 수 있기를 바랍니다. 감사합니다.

+0

왜'prod_id.top_movies_ceilin'을 사용합니까? .. –

+0

커서를 열었 기 때문에 그것을 저장하기 위해 "prod_id"라는 동일한 유형의 숫자 ​​변수로 가져 왔습니다. –

답변

2

야생의 추측 - 당신이하려고하는 것입니까? 스키마에서 prod_id top_movies_ceiling 함수 (int)를 : 평균

prod_id.top_movies_ceiling(3)

:

SELECT products.price 
FROM products 
JOIN (select * from top_movies_ceiling(3)) top_m on top_m.prod_id = products.prod_id 
; 
1

오차는이다.

원하는 것을 더 잘 이해하려면 top_movies_ceiling()의 CREATE FUNCTION을 입력하십시오.

+0

완료. 하지만 난 이미 대답 해! 대단히 감사합니다 !! –