powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Столбец в строку
14 сообщений из 14, страница 1 из 1
Столбец в строку
    #34668540
Очень лысый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Склепал функцыю для разворачивания столбца в строку (по аналогии с T-SQL)

CREATE OR REPLACE FUNCTION "crm"."GetPackers" (integer) RETURNS varchar AS
$body$
DECLARE
orderid ALIAS FOR $1;
packers VARCHAR(1000);
BEGIN
SELECT INTO packers packers || ', ' || r."ResponsibleName"
FROM "Shared"."Responsibles" r
INNER JOIN crm."OrderPackers" op ON (op."ResponsibleID" = r."ResponsibleID")
WHERE op."OrderID" = OrderID;
RETURN packers;
END;
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
однако, падла, не работает. Как можно переписать?
...
Рейтинг: 0 / 0
Столбец в строку
    #34668870
Serik Akhmetov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У вас в соединении участвует неинициализированная строка.

А вообще, если хотите чтобы вам отвечали:
1) Пишите грамотно и без грязной ругани
2) используйте тег SRC
3) Задавайте вопрос примерно так:
Есть набор данных
Код: plaintext
<несколько строк данных>
их нужно представить так
Код: plaintext
<правильная выборка>
я хочу сделать это так
Код: plaintext
<ваша функция, оформленная в SRC>
Модератор:

Очень лысый уходит в бан до 1.08.2007. Возможно он за это время вспопнит заклинание
поиска и потаённая сила форума откроет ему массу вариантов решения этой тупой проблемы,
свидетельствующей прежде всего о качестве проектирования таблиц.
http://www.sql.ru/forum/actualsearch.aspx?search=%F2%F0%E0%ED%F1%EF%EE%ED%E8%F0%EE%E2%E0%ED%E8%E5&sin=0&a=&ma=0&bid=0&dt=-1&s=1&so=1
2Serik Akhmetov:
Наверное мы их учить не будем. Пусть учат английский(албанский).
Бан может быть снят досрочно при получении мной грамотного и полного перевода главы 17 документации Postgresql
Chapter 17. Server Configuration
"Асурги и урги сторонники сдержанных мер.
Веревочных петель и палок в умелых руках."
...
Рейтинг: 0 / 0
Столбец в строку
    #34668937
Уважаемый товарищ модератор! Вы крайне несправедливы ко мне. Я ведь всего лишь новичок в Postgre и хотел понять, почему функция не работает. Насчет правил оформления вопросов учту, однако остальные наезды в мой адрес и их форма возмутили меня до глубины души. Кстати, поясните, Pls, про качество проектируемых таблиц. Даже интересно стало.
...
Рейтинг: 0 / 0
Столбец в строку
    #34668980
Кстати, может кто подскажет нормальный форум по Postgre, а то здесь модераторы слишком нервные?
...
Рейтинг: 0 / 0
Столбец в строку
    #34669253
Shweik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор:
1)Первый и последний раз отвечаю тут. Все последующие претензии - в приват на мыло.
тем кто непонимает что действия модератора в конфе не обсуждаются - мои соболезнования.
2)Я не более нервный чем любой из регулярно посещающих этот форум и наблюдающих
как под дружным наплывом людей плохо читающих документацию нагло игнорирующих увещевания.
3) Я подскажу Вам _нормальный_форум_ для нормальных ламеров не умещих пользоваться поиском
и ждущих что за них кто-то будет делать их работу. http://postgres.ru/index.php?s=1ea9052b2f5842e43308ed7105b3838c&act=idx
И я искренне советую всем кто не умеет читать документацию и работать с поиском и поисковиками стройными рядами направляться туда. Тамошняя помойка забитая спамом - это и есть
Ваше место. Здесь покачто я постараюсь избежать тиражирования идиотских вопросов.
Я кажется уже предупреждал - что те кто будут повторять вопросы изложенные в FAQ и документации- получат бан. Те кто будут тут запрашивать крэки для коммерческих утилит/библиотек- получат бан. Те кто будут тут устраивать копию ПТ - тоже получат бан.
4) И наконец до текущих суток я никаких действий непредпринимал -больше просто наблюдал.
иногда удалял ерунду и бред.
Я повторю: обязуюсь в течении суток снять бан если получу письмо подписанное Вашим IP. с необходимым
Вам и тысячам столь же безграмотных горе-админов Русской Документацией. Это будет касаться всех забаненных мной. 19-ый пост Druxa меня убедил что если ничего не делать - то ничего и неизменится. Можно расписывать FAQ объемом равные документации но если ни то не другое читать не будут какой смысл? Можно делать замечательный полнотекстовый поисковик
по ресурсам Posgresql или форму но почему-то наш возмущающийся посетитель решил что проще задать странный вопрос чем поискать на него ответ и подумать(А возможно ли обще решение вопроса данными средствами?) И первый же запрос даст однозначный ответ - Тема транспонирования набора данных поднималась во _всех_ Форумах.
Так что не возмущайтесь, я решение принимаю в трезвом уме хоть и малость раздосадован.
Условия "амнистии" крайне просты! Вот и посмотрим - чего вы стоите..
P.S.
C детства недолюбливал людей, считаюob[ что кто-то должен всё сделать за них, а их дело- расписаться и получить зряплату. И извините за хамствоно сабж у нас называется "PostgreSQL","Postgres", но не "Postgre" ;)

А насчет необходимости транспонирования.... хмм возможно я заблуждаюсь но я привык считать что это "дорогая" c точки зрения нагрузки на сервер
процедура и ее следует избегать внезависимости от типа sql сервера. И почти всегда делал подобные вещи средствами клиентского приложения. А вариантов реализации "поворота" несколько,
но сейчас мне просто нет настроения думать за Вас.
...
Рейтинг: 0 / 0
Столбец в строку
    #34669258
Very bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, кстати, проблема решалась так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
CREATE OR REPLACE FUNCTION "crm"."GetPackers" (integer) RETURNS varchar AS
$body$
DECLARE
       orderid ALIAS FOR $ 1 ;
       packers VARCHAR( 1000 );
BEGIN
     packers := '';
    SELECT INTO packers packers || ', ' || r."ResponsibleName"
    FROM "Shared"."Responsibles" r
    INNER JOIN crm."OrderPackers" op ON (op."ResponsibleID" = r."ResponsibleID")
    WHERE op."OrderID" = orderid;
    
    RETURN ltrim(packers , ', ');
END;
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;
(Функция раскладывает столбец таблицы в строку с перечислением через ЗПТ)
...
Рейтинг: 0 / 0
Столбец в строку
    #34669296
Very bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторИ я обязуюсь в течении суток снять бан если получу письмо подписанное Вашим IP. с необходимым
Вам и тысячам столь же безграмотных горе-админов Русской Документацией.
Я не админ. Я скромный аналитик (в смысле данные анализирую, DataMining там разный и тп.), на досуге изучающий Postgre. А переводить не буду - хорошее дело и полезное, но не могу. На работе некогда, а дома у меня нет. :-)
...
Рейтинг: 0 / 0
Столбец в строку
    #34669347
Shweik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Достойный ответ - пусть кто-то работает а я буду юзать .... как скромный аналитик нашару.
Похоже быть вам в бане до сроку.
Ладно проехали - "Вольному воля спасённому - боль"
------------------------------------------------------------
Насчёт функции - а вы пробовали прикинуть банальную вещь - _как_ будет изменяся время выполнения запроса в зависимости от числа полей в таблице? ;)
...
Рейтинг: 0 / 0
Столбец в строку
    #34669354
Very Bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторА вариантов реализации "поворота" несколько,
но сейчас мне просто нет настроения думать за Вас.
А я и не прошу. Мой вариант - всего лишь вольный перевод соответствующего примера из FAQ по MSSQL. У меня тоже нет настроения думать. Я вообще в отпуске.
...
Рейтинг: 0 / 0
Столбец в строку
    #34669367
Very Bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторНасчёт функции - а вы пробовали прикинуть банальную вещь - _как_ будет изменяся время выполнения запроса в зависимости от числа полей в таблице? ;)
Да, прикинул. Только в таблице той записей не больше, чем пару сотен будет за все время жизни проги.
...
Рейтинг: 0 / 0
Столбец в строку
    #34669409
Very bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мало того, у меня в MSSQL2005 транспонирование работает на таблице с 100 млн. записями. И ничего. Главное, чтоб индекс соответствующий был.
...
Рейтинг: 0 / 0
Столбец в строку
    #34669411
Shweik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а в архивы маилистов постгреса вы не заглядываете из религиозных убеждений?
Восемь лет назад я ответ на этот вопрос там встречал ;)
Или действительно с языком ВП так плохо?
...
Рейтинг: 0 / 0
Столбец в строку
    #34669519
Very bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автора в архивы маилистов постгреса вы не заглядываете из религиозных убеждений?
Восемь лет назад я ответ на этот вопрос там встречал ;)
Или действительно с языком ВП так плохо?
А кто такие маилисты постгресса (почти маоисты), и что за язык ВП?
...
Рейтинг: 0 / 0
Столбец в строку
    #34669974
Very bald
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ладно, забаньте меня еще на месяц: про майллисты еще можно догадаться (только непонятно, где их читать), а что такое язык ВП - никак, на ум только инициалы известной личности приходят.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Столбец в строку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]