![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Аггрегатные функции для строковых величин [D5, MSSQL]
Vick © (2003-12-26 11:45:00)
Доброго всем дня.
Помню был в форуме такой вопрос, не могу найти: в общем есть табличка вида
NAME PRICE
-------------
aa 10
vv 52
cc 12
dd 25
Нужно построить аггрегатный запрос таким образом чтобы в результате получилось:
NAME PRICE
------------------------
aa, vv, cc, dd 99
roottim (2003-12-26 12:35:00) [21]
> аггрегатный запрос
может нужен просто крос-таб отчет !
paul_k (2003-12-26 12:34:00) [22]
кстати а отчеты в чем рисуеш?
paul_k (2003-12-26 12:31:00) [23]
Вик а ты воли им не давай.
У бугалтеров есть хотелки а постановку задачи прорабатывают отнюдь не они.
Есть документация нормативная, где 90% форм отчетов и зафиксированы. А подобные твоему решения я всегда умудрялся отдать в виде списка с подписью ИТОГО СУММА:
Vick (2003-12-26 12:27:00) [24]
> paul_k ©
Бухгалтерии только дай повод, она и не такое придумает. Постановку данной задачи я конечно утрировала, но она примерно такая же.
paul_k (2003-12-26 12:26:00) [25]
2 Johnmen
ну.. может быть.. хотя всяческие депозитарии, бекофисы,( и прочий учет ЦБ), оперкассы тоже много всяких красивых отчетов требуют. Так вот нет такого места где все это на уровне построителя отчетов не решается.
LordOfSilence (2003-12-26 12:23:00) [26]
Самый простой способ - добавить еще одно поле "ТипТовара",
для всех этих элементов "aa, vv, cc, dd" установить в одно и
тоже значение, потом группировать по нему и суммировать.
Конечно же, в таком случае ты не получишь конкатенацию строк
"aa, vv, cc, dd", но зато просуммируешь. ;-)
Вика, поделись замыслом - какой физический/логический смысл
имеет сумма цен?
Пример:
цена килограмма яблок - 30 руб.
цена бутылки пива - 15 руб.
итого: "пиво, яблоки" - 45 руб.
Johnmen (2003-12-26 12:22:00) [27]
>paul_k ©
>ну не встречал я ещё таких отчетов где данный вариант может понадобится.
Это потому, что бухгалтерских программ не писал...:)
paul_k (2003-12-26 12:14:00) [28]
1. зачем подкладывать себе грабли.
(пример - 3000 строк сложи так. на бумаге. посчитай длину результата. как ты их передаш?)
2. если уж очень хочется то надо городить курсор и в нем все это клеить. причем в переменную типаtext
А лучше, все-таки в постановке задачи ковырятся.
ну не встречал я ещё таких отчетов где данный вариант может понадобится.
Sandman25 (2003-12-26 11:52:00) [29]
Без хранимой процедуры не обойтись.