SELECT get_progressrecord(ID)
devolverá una sola columna de tipo record
.
SELECT * FROM get_progressrecord(ID)
devolverá varias columnas (coincidiendo con su out
parámetros).
Aparte, el hecho de que sus campos de salida no tengan nombres puede hacer que su función sea un poco difícil de trabajar. También hay una sintaxis alternativa para RETURNS SETOF RECORD
que encuentro más fácil:
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
...