Seperti disebutkan di atas dalam komentar - kolom yang dihasilkan akan tersedia di Postgres 12.
Dimungkinkan untuk memalsukan kolom yang dihasilkan dengan fungsi dalam versi <12:
https://www.db-fiddle.com/f/21FtTGSuTXzZxoQX9CRUZf/0
CREATE TABLE orders (
receiptPrice INT,
platformFee INT,
delivererFee INT
);
CREATE OR REPLACE FUNCTION paymentPrice(_order orders)
RETURNS integer AS $$
SELECT ( _order.receiptPrice + _order.platformFee + _order.delivererFee)
$$
STABLE
LANGUAGE SQL;
SELECT paymentPrice(orders) FROM orders;
Saya kira kasus penggunaan untuk ini adalah, jika beberapa alat lain bergantung padanya (gunakan kasus untuk saya di mana alat seperti https://github.com/graphile/postgraphile ) atau jika kueri tidak terlalu bertele-tele.