"Eugene Dorofeyev" <edorofeyev@gmail.com> writes:
> I'm trying to use RETURN QUERY in a function (see query below) in order to
> return list of issues and number of times when each issue occurred.
It looks like your problem is you forgot a BEGIN.
> CREATE OR REPLACE FUNCTION
> dbglogs_golden.get_grouped_issues_by_agents(_p_agent_ids integer[])
> RETURNS TABLE(_count integer, _desc text) AS $$
> RETURN QUERY SELECT COUNT(tbl_rpc_data.data) AS count, tbl_rpc_data.data
> FROM dbglogs_golden.tbl_rpc_messages, dbglogs_debug.tbl_severity_levels,
> dbglogs_golden.tbl_rpc_data, dbglogs_product_agent.tbl_product_agents
> WHERE tbl_severity_levels.severity_level_id =
> tbl_rpc_messages.severity_level_id AND
> tbl_rpc_data.data_id = tbl_rpc_messages.data_id AND
> tbl_product_agents.product_agent_id =
> tbl_rpc_messages.product_agent_id AND
> tbl_rpc_messages.product_agent_id = ANY(_p_agent_ids) AND
> tbl_severity_levels.severity_level_id IN (1, 2, 4, 5)
> GROUP BY tbl_rpc_data.data
> ORDER BY count DESC;
> END;
> $$ LANGUAGE 'plpgsql';
regards, tom lane