Postgresql 说“模式不存在”

Postgresql say “schema does not exist”

我怎样才能使这个查询有效?

我有函数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; 

returns:

prod_id|quan_in_stock|sales

现在,当我 运行 查询时:

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

我收到错误:schema "prod_id" does not exist

希望您能帮帮我! 谢谢!

大胆猜测 - 这是您尝试做的吗?

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

错误在:

prod_id.top_movies_ceiling(3)

这意味着:来自架构 prod_id.

的函数 top_movies_ceiling(int)

请输入 top_movies_ceiling() 的 CREATE FUNCTION 以便更好地理解您的需求。