powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Informix [игнор отключен] [закрыт для гостей] / Помогите с запросом....
11 сообщений из 11, страница 1 из 1
Помогите с запросом....
    #34061216
LOTOS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть запрос:

select '<@p_DataBase>', ch.client_id, ch.operation_group_id, ch.operation_type_id, ch.operation_kind_id,
ok.balance_kind_id, ch.summa, SUM(mcd.credit), mtrd.nds, SUM(mcd.nds) as nds, ch.summa_ka, ch.nds_ka
from CHARGE_HISTORY ch LEFT JOIN mtr_cred_details_s mcd ON ch.charge_id = mcd.charge_id
LEFT JOIN mtr_details mtrd ON ch.charge_id = mtrd.charge_id, operation_type ok
where ch.operation_type_id = ok.code
and message_date between '<@p_startdate>' and '<@p_finishdate>'
group by 2,3,4,5,6,7,11,12

я сумирую суммы в полях mcd.credit и mcd.nds. В общем все работает замечательно. Но теперь нужно еще суммировать по полю mtrd.nds. вот тут и появилась проблема. В общем по этому полю сумма получается в Н-раз больше чем нада... Вопрос: можно ли как то суммировать еще и по этому полю, или писать процедуру...
Процедуру то написать не проблема... интересно решение
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34062919
LOTOS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо за ответы :). Пишу процидурку
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34063241
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочешь ответ?

Вопрос: можно ли как то суммировать еще и по этому полю,
Ответ: Можно.

Если вопрос: Почему умножается?
Ответ: потому что выбираются некоторые строки из mtrd по несколько раз.

Я думаю, никто не смог понять вопроса, поэтому ответить в принципе невозможно.
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34063468
Valentyn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
За пояснение сути проблемы и за названия полей в таблицах - категорический низачОт.
Чисто интуитивно можно догадаться какие именно проблемы возникли в запросе.
Попробуй написать так:

select '<@p_DataBase>', client_id, operation_group_id, operation_type_id, operation_kind_id
, balance_kind_id, summa, ch.summa_ka, ch.nds_ka
, sum(mtrd_nds) as mtrd_nds, sum(credit) as credit, sum(nds) as nds
from table(multiset(
select ch.client_id, ch.operation_group_id, ch.operation_type_id, ch.operation_kind_id
, ok.balance_kind_id, ch.summa, ch.summa_ka, ch.nds_ka, mtrd.nds as mtrd_nds
, SUM(mcd.credit) as credit, SUM(mcd.nds) as nds
from CHARGE_HISTORY ch
left join mtr_cred_details_s mcd ON ch.charge_id = mcd.charge_id
left join mtr_details mtrd ON ch.charge_id = mtrd.charge_id, operation_type ok
where ch.operation_type_id = ok.code and message_date between '<@p_startdate>' and '<@p_finishdate>'
group by 1,2,3,4,5,6,7,8,9)) s
group by 2,3,4,5,6,7,8,9

Если датасет в подзапросе может возвращать большое кол-во строк - лучше использовать временные таблицы.
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34065658
LOTOS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну не знаю.... может и не зачет :) тоже самое отправил знакомому... все понял, варианты предложил.... может просто Журавлеву влом было посидеть и почитать... Правильно сказано "ИНОГДА ЛУЧШЕ ПРОМОЛЧАТЬ".... как раз твой случай. Да и расписываться за всех... :))
Кто захоче, тот поймет...
Валентину спасибо.... попробую
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34065720
Фотография Журавлев Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LOTOSНу не знаю.... может и не зачет :) тоже самое отправил знакомому... все понял, варианты предложил.... может просто Журавлеву влом было посидеть и почитать... Правильно сказано "ИНОГДА ЛУЧШЕ ПРОМОЛЧАТЬ".... как раз твой случай. Да и расписываться за всех... :))
Кто захоче, тот поймет...
Валентину спасибо.... попробую
Дада я очень ленивый мне стыдно, простите что не помог и за всех постараюсь больше не отвечать.
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34066278
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LOTOSНу не знаю.... может и не зачет :) тоже самое отправил знакомому... все понял, варианты предложил.... может просто Журавлеву влом было посидеть и почитать... Правильно сказано "ИНОГДА ЛУЧШЕ ПРОМОЛЧАТЬ".... как раз твой случай. Да и расписываться за всех... :))
Кто захоче, тот поймет...
Валентину спасибо.... попробую
У знакомого, возможно, много времени и дружеские чувства к тебе.
Но мне тоже не захотелось думать над твоим вопросом, т.к. ты не удосужился прочитать прикрепленный топик "Как задавать вопросы", не дал пример, который можно повторить другим, ясно ничего не объяснил...
Журавлев ведь сначала промолчал и попробовал намекнуть, что ты неправ, только после того, как ты съехидничал "спасибо за ответы :)".
А нужно было задуматься - раз не отвечают, то причин может быть множество:
- не успели (почти никто не сидит все время в форуме, а заходит иногда раз в неделю). И если тебе горит, то это не значит, что все должны все бросить и спешить на помощь;
- просто не понятен вопрос и ломать голову и телепатировать или задавать множество вопросов, на которые ты сам должен быть ответить, им некогда;
- "здесь никто никому ничего не должен" и укорять их за это незачем;
- спасибо людям, а Журавлеву особенно, за их желание отвечать многим и многим, всегда отдавать значительно больше чем брать, за терпение отвечать по много раз на одни и те же вопросы или искать в форуме вместо вопрошающего.
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34066325
Фотография Щукина Анна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasilisА нужно было задуматься - раз не отвечают, то причин может быть множество...+1
Лучше и не скажешь, разве что только напишешь: Рекомендации по оформлению сообщений в форуме
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34066334
Фотография Щукина Анна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Щукина Анна vasilisА нужно было задуматься - раз не отвечают, то причин может быть множество...+1
Лучше и не скажешь, разве что только напишешь: Рекомендации по оформлению сообщений в форуме Хоть оно и не по данной ветке форума, но суть отражает - лучше некуда
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34066431
LOTOS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vasilis
У знакомого, возможно, много времени и дружеские чувства к тебе.
Но мне тоже не захотелось думать над твоим вопросом, т.к. ты не удосужился прочитать прикрепленный топик "Как задавать вопросы", не дал пример, который можно повторить другим, ясно ничего не объяснил...
Журавлев ведь сначала промолчал и попробовал намекнуть, что ты неправ, только после того, как ты съехидничал "спасибо за ответы :)".
А нужно было задуматься - раз не отвечают, то причин может быть множество:
- не успели (почти никто не сидит все время в форуме, а заходит иногда раз в неделю). И если тебе горит, то это не значит, что все должны все бросить и спешить на помощь;
- просто не понятен вопрос и ломать голову и телепатировать или задавать множество вопросов, на которые ты сам должен быть ответить, им некогда;
- "здесь никто никому ничего не должен" и укорять их за это незачем;
- спасибо людям, а Журавлеву особенно, за их желание отвечать многим и многим, всегда отдавать значительно больше чем брать, за терпение отвечать по много раз на одни и те же вопросы или искать в форуме вместо вопрошающего.

да, так можно тему развивать до бесконечности... Я не сижу постоянно в форумах, не знал про топик "Как задавать вопросы"... знаю, что незнание закона не освобождает от ответственности... И я своей фразой "спасибо за ответы :)" хотел сказать, что времени у меня ждать больше нет... и я пишу процедуру... я понимаю, что каждый судит по себе. Но я то что могу поделать?
Ну может и не корректно описал проблему... согласен... виноват.
В следующий раз обязательно прочитаю и исправлюсь.
А ответ Журавлева похож на хамство... из ответа видно, что он все воспринял на свой счет... Приветствуеш такое поведение? Да ради бога. :)
...
Рейтинг: 0 / 0
Помогите с запросом....
    #34067476
vasilis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LOTOSНу может и не корректно описал проблему... согласен... виноват.
В следующий раз обязательно прочитаю и исправлюсь.
А ответ Журавлева похож на хамство... из ответа видно, что он все воспринял на свой счет... Приветствуеш такое поведение? Да ради бога. :)
Нет, хамство я не приветствую в любом виде.
Кстати, я не заметил хамства ни в первом ни во втором его ответах. Может, как ты правильно заметил "каждый судит по себе" ? Хотя все, конечно, относительно. Тут, на некоторых форумах SQL.RU, почти нормальным считается иногда такой тон и поведение (с матами, "шепелявыми", религиозными и националистическими заездами, что просто возмущает до глубины души. Очень надеюсь, что наш форум так и останется чисто техническим, умным, доброжелательным и спокойным местом общения любителей Информикс.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / Помогите с запросом....
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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