Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Группировка по колонкам  [new]
pavlo1c
Member

Откуда: Россия
Сообщений: 112
Всем привет, задали такую задачку 2 дня бьюсь не могу придумать, никто не сталкивался?
Суть следующая:
Есть строки и колонки, строки пока не трогаем, нужно скажем вывести шапку отчета. Группировка по колонкам может идти по 2-3-4 группировкам. И это не проблема, НО подавай на каждом уровне, по каждой группировке итог. Причем на последнем смысла нет и его там нет.
Есть скажем Компания, Контрагент, Договор (по строкам будет номенклатура, но не суть сейчас) - нужно вывести так: Пример для 3 группировок во вложении.

если бы не итоги, то приблизительно такой запрос бы решал вопрос, но выводя каждую строку уровня, как бы заранее нужно знать сколько колонок будет на всех уровнях в целом с учетом итогов :( Кто то решал такую задачу? Есть идеи?

select Компания,Контрагент,Договор, sum(1) as Кол
from #ОТЧЕТ
group by Компания,Контрагент,Договор with ROLLUP


К сообщению приложен файл. Размер - 5Kb
15 фев 16, 11:01    [18816808]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
Glory
Member

Откуда:
Сообщений: 104760
pavlo1c
нужно вывести так: Пример для 3 группировок во вложении.

То, что вы "нарисовали" в качестве результата, на TSQL не делают.
Это делают в системах отчета
15 фев 16, 11:04    [18816814]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
pavlo1c
Member

Откуда: Россия
Сообщений: 112
Ну я рисовать на собираюсь в скуле, просто мне нужно как то получить количество элементов группировок на каждом уровне.
15 фев 16, 11:11    [18816855]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
Glory
Member

Откуда:
Сообщений: 104760
pavlo1c
просто мне нужно как то получить количество элементов группировок на каждом уровне.

Просто вам нужно оформить свой вопрос так, как сказано в Рекомендациях по оформлению
15 фев 16, 11:15    [18816888]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
iap
Member

Откуда: Москва
Сообщений: 47049
pavlo1c
Ну я рисовать на собираюсь в скуле, просто мне нужно как то получить количество элементов группировок на каждом уровне.
GROUP BY GROUPING SETS(...)?
15 фев 16, 11:18    [18816904]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
pavlo1c
Member

Откуда: Россия
Сообщений: 112
Glory,

Ну тогда как получить количество элементов группировок на каждом уровне с учетом фильтра.
Скажем если я укажу условие where по значению первой группировки, то нужно вернуть (первая будет 1) остальные сколько на каждом уровне именно сгруппированных элементов.
15 фев 16, 11:20    [18816915]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
Glory
Member

Откуда:
Сообщений: 104760
pavlo1c
Ну тогда как получить количество элементов группировок на каждом уровне с учетом фильтра.
Скажем если я укажу условие where по значению первой группировки, то нужно вернуть (первая будет 1) остальные сколько на каждом уровне именно сгруппированных элементов.

Вы в состоянии открыть прикрепленную тему Рекомнедации по офомоению сообщений ?
Найти там пункты 4 и 6 ? Прочитать их ? Выполнить их ?
15 фев 16, 11:21    [18816922]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
pavlo1c
Member

Откуда: Россия
Сообщений: 112
iap
pavlo1c
Ну я рисовать на собираюсь в скуле, просто мне нужно как то получить количество элементов группировок на каждом уровне.
GROUP BY GROUPING SETS(...)?

спасибо сработало бы походу, но скуль то 2к (сорри что не указал :( )
15 фев 16, 11:32    [18817000]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
pavlo1c
Member

Откуда: Россия
Сообщений: 112
pavlo1c,

Я бы не парился, выгрузил бы в csv, а там пусть екселем в сводной, НО им тогда по строкам (строчная группировка) по каждой такой группировке в строке нужно выводить итоги по валютам. Потому решил клиентом делать и рисовать.
15 фев 16, 11:42    [18817065]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
Glory
Member

Откуда:
Сообщений: 104760
pavlo1c
Я бы не парился,

Пока что вы парите других.
У вас есть конкретный вопрос по MSSQL?
15 фев 16, 11:47    [18817102]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
pavlo1c
Member

Откуда: Россия
Сообщений: 112
Glory,

Ну я же писал: только добавится для базы в совместимости с 2к

автор
Ну тогда как получить количество элементов группировок на каждом уровне с учетом фильтра.
Скажем если я укажу условие where по значению первой группировки, то нужно вернуть (первая будет 1) остальные сколько на каждом уровне именно сгруппированных элементов.
15 фев 16, 11:56    [18817171]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
Glory
Member

Откуда:
Сообщений: 104760
pavlo1c
Ну я же писал

Чукча - не читатель, чукча - писатель.
15 фев 16, 12:00    [18817195]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по колонкам  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8317
pavlo1c,

фильтр по группировке - это having.
15 фев 16, 12:10    [18817268]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить