Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как использовать SUM в такой ситуации? / 14 сообщений из 14, страница 1 из 1
11.03.2019, 15:31
    #39784531
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
Есть запрос, который выбирает порядка 15 строк, а в одной используется функция SUM
Если не использовать GROUP BY то выбрасывает ошибку и требует в все остальные поля в GROUP BY, и тогда результирующая выборка некорректная есть дублирующие записи, как сделать чтобы использовалась SUM, но без использования GROUP BY для всех полей или только некоторые можно было исключить?
...
Рейтинг: 0 / 0
11.03.2019, 15:35
    #39784533
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2beyкак сделать чтобы использовалась SUM, но без использования GROUP BY для всех полей или только некоторые можно было исключить?Непонятно тогда, что будет суммировать SUM?
Вы би привели пример данных.
...
Рейтинг: 0 / 0
11.03.2019, 15:41
    #39784541
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
первую колонку надо просуммировать
...
Рейтинг: 0 / 0
11.03.2019, 15:46
    #39784543
invm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
Код: sql
1.
sum(первая колонка) over ()
...
Рейтинг: 0 / 0
11.03.2019, 15:51
    #39784544
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
invm
Код: sql
1.
sum(первая колонка) over ()


я так пробовал он тогда заполняет первую колонку одним значением
...
Рейтинг: 0 / 0
11.03.2019, 15:55
    #39784547
felix_ff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2bey,

ну а вам что в таком случае нужно?
...
Рейтинг: 0 / 0
11.03.2019, 16:00
    #39784549
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
на первом скрине первая колонка нужна ее сумма, но видите там колонка дублируется СТ000000885 т.е. одна строка с СТ000000885 и суммой всех первых колонок
...
Рейтинг: 0 / 0
11.03.2019, 16:13
    #39784559
felix_ff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2bey,

ну у вас есть какой то признак этой строки что она должна сумироваться?
Код: sql
1.
2.
3.
4.
5.
6.
7.
 select
         case
             when [признак] = 0 then [первая колонка]
             when [признак] = 1 them sum([первая колонка] over ())
          end
         --остальные колонки
 from [table]
...
Рейтинг: 0 / 0
11.03.2019, 16:18
    #39784563
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2beyи суммой всех первых колонокКак определить, какие колонки первые, а какие нет?
И обнародуйте версию сервера. Это может быть важно.
...
Рейтинг: 0 / 0
11.03.2019, 16:18
    #39784565
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
нет такого признака, я думал подзапросом сделать, но там свои сложности, как на втором скрине получается
...
Рейтинг: 0 / 0
11.03.2019, 16:23
    #39784568
iap
iap
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2beyнет такого признака, я думал подзапросом сделать, но там свои сложности, как на втором скрине получаетсяДобавьте поле, определяющее порядок записей. Тогда можно будет решить вашу задачу.
...
Рейтинг: 0 / 0
11.03.2019, 18:44
    #39784650
Щукина Анна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2beyinvm
Код: sql
1.
sum(первая колонка) over ()


я так пробовал он тогда заполняет первую колонку одним значениемпопробуйте к этому ещё и partition by <тут ваше поле, в котором содержатся СТ000000885 >
...
Рейтинг: 0 / 0
11.03.2019, 22:21
    #39784703
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
sc2r2beyна первом скрине первая колонка нужна ее сумма, но видите там колонка дублируется СТ000000885 т.е. одна строка с СТ000000885 и суммой всех первых колонокИ чего не получается с GROUP BY, я не понимаю? Добавьте остальные поля в GROUP BY, и будет всё правильно.
...
Рейтинг: 0 / 0
11.03.2019, 22:22
    #39784704
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM в такой ситуации?
Щукина Аннаsc2r2beyя так пробовал он тогда заполняет первую колонку одним значениемпопробуйте к этому ещё и partition by <тут ваше поле, в котором содержатся СТ000000885 >Да ему просто нужно просуммировать, не надо там никаких OVER и прочего.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как использовать SUM в такой ситуации? / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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