Есть объект допустим(ID=100000) с подчиненными объектами одного типа у них есть следующие атрибуты ( цена (число) , дата (дата) , исполнитель (строка). Требуется:
1. Отобрать все объекты удовлетворяющие условию дата < некой дата например 21.01.2007, и просуммировать все цены полученной выборки.
2. Отобрать все объекты где исполнитель будет = например 'Фирма', и также просуммировать все цены.
3. Совмещенный запрос где выборка дата + исполнитель итог сумма цен!
Кто может помочь помогите....
Кто может помочь с запросом
- Alexey
- Активный участник
- Сообщения: 123
- Зарегистрирован: 21 окт 2005, 15:49
- Откуда: Белоруссия, Минск
- Контактная информация:
Кто может помочь с запросом
- А деньги?
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Старик Крупский
- Активный участник
- Сообщения: 803
- Зарегистрирован: 27 июл 2006, 22:17
- Откуда: Москва
- Alexey
- Активный участник
- Сообщения: 123
- Зарегистрирован: 21 окт 2005, 15:49
- Откуда: Белоруссия, Минск
- Контактная информация:
Большое спасибо все получилось...
- А деньги?
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Александр
- Активный участник
- Сообщения: 1658
- Зарегистрирован: 24 авг 2006, 08:06
- Используемое ПО: Lotsia PDM PLUS
- Откуда: 55.745578,37.665825
нескромный вопрос- а как получилось посчитать сумму? у меня не получилось, в MSSQL2000 следующая структура не работает
Select
sum(select ... найти в выбранном)
From
...
Where
дата<даты
исполнитель=исполнитель
цена is not null
т.е. если без SUM то получаем колонку с ценами, а если пытаться ее просуммировать - вылезает ошибка что Sum не работает с вложенными подзапросами
... а какая база использовалась?
Select
sum(select ... найти в выбранном)
From
...
Where
дата<даты
исполнитель=исполнитель
цена is not null
т.е. если без SUM то получаем колонку с ценами, а если пытаться ее просуммировать - вылезает ошибка что Sum не работает с вложенными подзапросами

... а какая база использовалась?
Софт - RicCRM<<LotsiaPDM(4.40)<<MsSQL(5/8)
Уровень администрирования - Альтернативный
- Старик Крупский
- Активный участник
- Сообщения: 803
- Зарегистрирован: 27 июл 2006, 22:17
- Откуда: Москва
- Alexey
- Активный участник
- Сообщения: 123
- Зарегистрирован: 21 окт 2005, 15:49
- Откуда: Белоруссия, Минск
- Контактная информация:
MS SQL Server 2000
и все чере Sum считается, вот запрос который просчитал суммы и все такое если будет что то не понятно пишите:
str_SQL1 = Set ( ' SELECT Sum (vnp.value) FROM LSDBO.tree_link_view tl, lsdbo.value_numeric_view vNP, lsdbo.attrib_value_view aNP WHERE tl.parent_id = ' + id + ' and tl.link_type_id = 1 and tl.link_id= anp.object_id and anp.attrib_id = 100000022600001[атрибиут по которому считается сумма] and vnp.attrib_id = 100000022600001[атрибиут по которому считается сумма] and anp.value_id =vnp.id and anp.object_id in (SELECT av.object_id FROM lsdbo.attrib_value_view av, lsdbo.value_datetime_view vv WHERE av.value_id = vv.id and av.attrib_id = 100000028000001[дата] and vv.attrib_id = 100000028000001[дата] AND vv.Value < ~''+ str_Date +'~' ) ' )
Я думаю он не идеален, но главное работает. В квадратных скобках некоторый комментарий.
и все чере Sum считается, вот запрос который просчитал суммы и все такое если будет что то не понятно пишите:
str_SQL1 = Set ( ' SELECT Sum (vnp.value) FROM LSDBO.tree_link_view tl, lsdbo.value_numeric_view vNP, lsdbo.attrib_value_view aNP WHERE tl.parent_id = ' + id + ' and tl.link_type_id = 1 and tl.link_id= anp.object_id and anp.attrib_id = 100000022600001[атрибиут по которому считается сумма] and vnp.attrib_id = 100000022600001[атрибиут по которому считается сумма] and anp.value_id =vnp.id and anp.object_id in (SELECT av.object_id FROM lsdbo.attrib_value_view av, lsdbo.value_datetime_view vv WHERE av.value_id = vv.id and av.attrib_id = 100000028000001[дата] and vv.attrib_id = 100000028000001[дата] AND vv.Value < ~''+ str_Date +'~' ) ' )
Я думаю он не идеален, но главное работает. В квадратных скобках некоторый комментарий.
- А деньги?
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным
- Какие деньги? - сказал Остап, открывая дверь. - Вы, кажется, спросили про какие-то деньги?
----------------------------------
SEO стало интересным