Как вернуть результат SELECT внутри функции в PostgreSQL?
У меня есть эта функция в PostgreSQL, но я не знаю, как вернуть результат запроса:
CREATE OR REPLACE FUNCTION wordFrequency(maxTokens INTEGER)
RETURNS SETOF RECORD AS
$
BEGIN
SELECT text, count(*), 100 / maxTokens * count(*)
FROM (
SELECT text
FROM token
WHERE chartype = 'ALPHABETIC'
LIMIT maxTokens
) as tokens
GROUP BY text
ORDER BY count DESC
END
$
LANGUAGE plpgsql;
Но я не знаю, как вернуть результат запроса внутри функции PostgreSQL.
Я обнаружил, что тип возвращаемого значения должен бытьSETOF RECORD
, правильно? Но команда возврата не верна.
Как правильно это сделать?