postgres "Таблица возвратов" возвращает строку - PullRequest
5 голосов
/ 23 июля 2010

Я использую язык SQL в Postgres для возврата таблицы с помощью команды RETURNS TABLE:

CREATE OR REPLACE FUNCTION procreadbudget()
  RETURNS TABLE(budgetmonth character, budgetincome numeric, budgetexpense numeric) AS
$BODY$
SELECT budget_month, budget_income, budget_expense FROM budget ORDER BY unique_id;
$BODY$
  LANGUAGE 'sql' VOLATILE

Все данные возвращаются в виде строки с разделителями-запятыми, а не в виде таблицы:

"(Jan,1123,1201)"
"(Feb,1098,996)"
"(Mar,1545,1345)"
"(Apr,1564,1952)"
"(May,1123,990)"
"(Jun,1345,1234)"
"(Jul,1234,878)"
"(Aug,1139,1187)"
"(Sep,1076,1123)"
"(Oct,873,956)"
"(Nov,1298,1423)"
"(Dec,1123,1324)"

Любые предложения, пожалуйста, Майк

Ответы [ 2 ]

7 голосов
/ 23 июля 2010

Используйте

SELECT * FROM procreadbudget();

вместо

SELECT procreadbudget();
0 голосов
/ 23 июля 2010

сделать так:

select t.budgetmont,
       t.budgetincome,
       t.budgetexpense
from procreadbudget() as t
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...