如何使此查询有效?
我有函数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;
返回:
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
我希望你能帮助我! 谢谢!
答案 0 :(得分:2)
一个疯狂的猜测 - 你试图做什么?
SELECT products.price
FROM products
JOIN (select * from top_movies_ceiling(3)) top_m on top_m.prod_id = products.prod_id
;
答案 1 :(得分:1)
错误在:
prod_id.top_movies_ceiling(3)
表示:来自架构prod_id的函数top_movies_ceiling(int)。
请输入top_movies_ceiling()的CREATE FUNCTION以更好地了解您的需求。