從 Postgres 中的函數傳回虛擬表
可以建立一個 Postgres 函數,該函數傳回具有自訂架構的虛擬表。這種類型的表結構由不同數量的列和行組成。
PL/pgSQL 函式語法
適用於現代 PL/pgSQL 版本(PostgreSQL 8.4 及更高版本) ,語法如下:
CREATE OR REPLACE FUNCTION function_name() RETURNS TABLE (column1 data_type, column2 data_type, column3 data_type) AS $func$ BEGIN RETURN QUERY VALUES (value1, value2, value3), (value4, value5, value6); END; $func$ LANGUAGE plpgsql IMMUTABLE ROWS number_of_rows;
重要要點:
SQL 函數語法
對於簡單情況,請使用此 SQL功能:
CREATE OR REPLACE FUNCTION function_name() RETURNS TABLE (column1 data_type, column2 data_type, column3 data_type) AS $func$ SELECT * FROM ( VALUES (value1, value2, value3), (value4, value5, value6) ) AS table_name(column1, column2, column3); $func$ LANGUAGE sql IMMUTABLE ROWS number_of_rows;
以上是如何建立返回虛擬表的 Postgres 函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!