powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Запрос на суммирование занчений
11 сообщений из 11, страница 1 из 1
Запрос на суммирование занчений
    #39307175
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день, прошу помощи разобраться с проблемой. Не могу понять почему не получается просуммировать данные.

Есть такой запрос:

Код: sql
1.
SELECT id, -1 as id_d, 'Отгруженные' as name, date_d, id_b, id_i,  count_items , article, shipped  FROM detailing WHERE shipped=1 AND id_i=75




ID ID_D NAME DATE_D ID_B ID_I COUNT_ITEMS ARTICLE SHIPPED
89545 -1 Отгруженные 75 24 1
92924 -1 Отгруженные 75 162 1


Получаю такой результат, мне нужно просуммировать количество.
Пишу

Код: sql
1.
    SELECT id, -1 as id_d, 'Отгруженные' as name, date_d, id_b, id_i,  SUM(count_items) , article, shipped  FROM detailing WHERE shipped=1 AND id_i=75



Просит сгруппировать, группирую по всем полям сумма не происходит. Я очень давно уже не работал с SQL. Помогите плз)
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307176
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DozentПросит сгруппировать, группирую по всем полям сумма не происходит.

группировать по id нет никакого смысла. Сначала разберись что тебе хочется. Если нужно суммирование без группировки тогда предложение OVER() после SUM тебе поможет.
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307181
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне нужно вместо 2 строк получить одну и при этом получить сумму поля count_items из 2 записей
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307188
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

если id это ПК то ты никак это не сделаешь. Убирай id из SELECT и группируй по всему кроме агрегата.
id_d, name, id_i и shipped я бы тоже выкинул
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307189
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок, спасибо) Впринципе получилось что хотел)
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307190
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
    SELECT id, -1 as id_d, 'Отгруженные' as name, date_d, id_b, id_i,  (SELECT  sum(count_items)   FROM detailing dtl1 WHERE shipped=1 AND dtl1.id_i=dtl.id_i) as count_items, article, shipped  FROM detailing dtl WHERE dtl.shipped=1



Как-то ускорить запрос можно? Очень долго работает
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307193
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

ты вообще ответы читаешь? Для твоего примера (если id сохранять) используй SUM как оконную функцию.
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307199
Dozent
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что за оконная функция? Я не понимаю
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307200
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dozent,

Код: sql
1.
2.
3.
SELECT id, -1 as id_d, 'Отгруженные' as name, date_d, id_b, id_i,  SUM(count_items) OVER(), article, shipped  
FROM detailing 
WHERE shipped=1 AND id_i=75
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307356
Фотография Exteris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DozentЧто за оконная функция? Я не понимаю
Это в FB 3.
...
Рейтинг: 0 / 0
Запрос на суммирование занчений
    #39307380
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Exteris,

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


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