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

есть таблица вида

------
1 | 80
1 | 70
1 | 10
2 | -
1 | 20
1 | 7
2 | -
...
------

хочется получить такую штуку
------
1 | 160
2 | -
1 | 27
2 | -
------

т.е. по группам до первого разделителя выбрать сумму группы и ее идентификатор.

такой запрос можно сделать без цикла?
...
Рейтинг: 0 / 0
выбор записей
    #34781417
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
строки в таблице БД не упорядочены

это одна и та же таблица: ------
1 | 80
1 | 70
1 | 10
2 | -
1 | 20
1 | 7
2 | -
...
------ ------
1 | 80
1 | 70
1 | 10
1 | 20
1 | 7
2 | -
2 | -
...
------
желаемый вами результат не определен однозначно
...
Рейтинг: 0 / 0
выбор записей
    #34781474
Rastafarra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если будет такой вариант
автор------
1 | 80
1 | 70
1 | 10
1 | 20
1 | 7
2 | -
2 | -
...

значит надо вернуть
автор1 | 187
2 | -

задача в том, чтобы разбить группы и по ним посчитать сумму. проблема в том, что группы не делятся по типу, например 1, 2, 3 и т.д., а делятся по раздилителю: 1111 2 11111111 2 11 ... ( <--тут 3 группы)
...
Рейтинг: 0 / 0
выбор записей
    #34781519
Dan Black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как уже писал LeXa NalBat , задача в свете реляционной теории не имеет права на существование.
Уточните условия, пожалуйста.
Код: plaintext
1.
----------------------------
 Verba volent, scripta manent 
...
Рейтинг: 0 / 0
выбор записей
    #34781580
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Rastafarra:

после выполнения команд

Код: plaintext
1.
2.
3.
create table t1 ( id integer );
insert into t1 ( id ) values (  1  );
insert into t1 ( id ) values (  2  );
insert into t1 ( id ) values (  3  );

что должен вернуть постгрес по запросу "select id from t1"?

Код: plaintext
1.
2.
 1 
 2 
 3 
Код: plaintext
1.
2.
 3 
 2 
 1 
Код: plaintext
1.
2.
 1 
 3 
 2 
...
Рейтинг: 0 / 0
выбор записей
    #34781615
Rastafarra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть некий запрос который возвращает данные именно вот так:
например: SELECT c1,c2 FROM t1 ORDER BY c3
------
1 | 80
1 | 70
1 | 10
2 | -
1 | 20
1 | 7
2 | -
...
------
надо как-то сделать над вышеупомянутым ВЛОЖЕННЫМ запросом получить данные:
------
1 | 160
2 | -
1 | 27
2 | -
------

как вариант первоначальную табличку можно взять примерно так:
------
1 | 1 | 80
2 | 1 | 70
3 | 1 | 10
4 | 2 | -
5 | 1 | 20
6 | 1 | 7
7 | 2 | -
...
------
...
Рейтинг: 0 / 0
выбор записей
    #34781784
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
imho, проще функцией на plpgsql

PS: таблица и запрос - разные вещи, поэтому возникло недопонимание
...
Рейтинг: 0 / 0
выбор записей
    #34781803
Rastafarra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это понятно :)

изначальный вопрос: "такой запрос можно сделать без цикла?"
...
Рейтинг: 0 / 0
выбор записей
    #34781954
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rastafarraэто понятно :)

изначальный вопрос: "такой запрос можно сделать без цикла?"средствами sql? наверное можно. но сложно. очень сложно. :)
...
Рейтинг: 0 / 0
выбор записей
    #34782048
_Андрей_М
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если ещё не поздно, я бы поменял структуру базы и завёл поле идентификатора групп, а по нему Sum() ... GROUP BY
...
Рейтинг: 0 / 0
выбор записей
    #34782253
Rastafarra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
увы, уже поздно.

более того, уже есть реализация и работает... всем спасибо :)
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / выбор записей
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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