La función con consulta SQL no tiene destino para los datos de resultados

Estoy tratando de crear una función que devuelve un conjunto de resultados SELECCIONADO. Cuando llamo a mi postgres funciona así.select * from tst_dates_func() Me sale un error como se muestra a continuación:

ERROR:  query has no destination for result data
HINT:  If you want to discard the results of a SELECT, use PERFORM instead.
CONTEXT:  PL/pgSQL function "tst_dates_func" line 3 at SQL statement

********** Error **********

ERROR: query has no destination for result data
SQL state: 42601
Hint: If you want to discard the results of a SELECT, use PERFORM instead.
Context: PL/pgSQL function "tst_dates_func" line 3 at SQL statement

Aquí está la función que he creado:

CREATE OR REPLACE FUNCTION tst_dates_func() 
    RETURNS TABLE( date_value date, date_id int, date_desc varchar) as
$BODY$   
BEGIN
    select a.date_value, a.date_id, a.date_desc from dates_tbl a;
END;
$BODY$
      LANGUAGE plpgsql;

No estoy seguro de por qué estoy recibiendo el error anterior. Me gustaria correrselect * from tst_dates_func(); y recuperar datos. O aún más unirse al conjunto de resultados si es necesario ¿Cuál es el problema aquí?

Respuestas a la pregunta(1)

Su respuesta a la pregunta