1

我的问题本质上相当简单。我正在尝试在 postgresql 中编写一个简短但甜蜜的函数,我可以在其中传递一个模式名称,它会返回一个与该模式关联的表的列表。

例如,我想将此 sql 放在一个函数中,将模式名传递给它,然后在其中执行它...

SELECT SCHEMANAME, TABLENAME

FROM PG_TABLES

WHERE SCHEMANAME = variable being passed in the function ()

将不胜感激您可能拥有的最简单的答案。

4

1 回答 1

1
CREATE OR REPLACE FUNCTION get_tables(ip_schemaname name) RETURNS TABLE(schemaname NAME, tablename name)
AS 
$$ 
    SELECT schemaname, tablename 
    FROM pg_tables 
    WHERE schemaname = ip_schemaname;
$$
LANGUAGE SQL;


SELECT * FROM get_tables('public');
于 2013-08-12T00:12:37.820 回答