SELECT get_progressrecord(ID)
restituirà una singola colonna di tipo record
.
SELECT * FROM get_progressrecord(ID)
restituirà più colonne (corrispondenti al tuo out
parametri).
Per inciso, il fatto che i tuoi campi di output non abbiano nomi potrebbe rendere un po' difficile lavorare con la tua funzione. C'è anche una sintassi alternativa per RETURNS SETOF RECORD
che trovo più facile:
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
...