SELECT get_progressrecord(ID)
zwróci pojedynczą kolumnę typu record
.
SELECT * FROM get_progressrecord(ID)
zwróci wiele kolumn (pasujących do Twojego out
parametry).
Nawiasem mówiąc, fakt, że twoje pola wyjściowe nie mają nazw, może sprawić, że twoja funkcja będzie trochę trudna w obsłudze. Istnieje również alternatywna składnia dla RETURNS SETOF RECORD
co uważam za łatwiejsze:
CREATE OR REPLACE FUNCTION get_progressrecord(int)
RETURNS TABLE(
height decimal(5,2),
weight decimal(5,2),
bmi decimal(4,2),
healthStatus text,
age int,
changePercentage decimal(4,2)
) AS
...