HKGalden科技臺
發表文章發起投票
Table-Valued Functions
PostgreSQL’s Table-Valued Functions
Source: http://blog.jooq.org/2014/07/07/postgresqls-table-valued-functions/

以我睇咗呢篇文章嘅理解,Table-Valued Functions會好似普通嘅Query一樣Return一Set data,但係User可以喺Function當中針對Input parameter同埋Function入面撈到嘅Data做啲改變。例如以PostgreSQL為例:


CREATE OR REPLACE FUNCTION
    f_2 (v1 INTEGER, v2 OUT INTEGER, v3 OUT INTEGER)
AS $$
BEGIN
    v2 := v1;
    v3 := v1 + 1;
END
$$ LANGUAGE plpgsql;


假設有User用呢個Function:


select * from f_2(1);


結果會係:


+----+----+
| v2 | v3 |
+----+----+
|  1 |  2 |
+----+----+


PostgreSQL、SQL Server、Oracle同埋HSQLDB都Support table-valued functions。

據呢個網頁 (http://khanrahim.wordpress.com/2010/05/21/mysql-stored-function-that-returns-table/) 所講,MySQL嘅Stored function只可以Return一個Value,所以寫唔到Table-valued functions,但係可以利用Temporary table做類似效果。
Good0Bad0
2014/07/07, 9:18:56 晚上
本貼文共有 0 個回覆
此貼文已鎖,將不接受回覆
發表文章發起投票