![]() |
|
Модераторы: skyboy |
![]()
|
|
| MadCoder |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 478 Регистрация: 24.8.2007 Где: Москва Репутация: нет Всего: 2 |
Добрый день!
БД: Microsoft SQL Server 2005. Базы данных: Contracts contr_id int bank_id int schet numeric(18,2) Banks bank_id int bank_name nvarchar(255) Results res_id int res_type int Payments pay_id int pay_sum numeric(18,2) Нужно выгрузить данные в следующем виде: * Наименование банка * Всего контрактов у этого банка * Кол-во контратов с результатами у этого банка * Общий счет (schet) контрактов у этого банка * Всего оплат у этого банка * Всего договоров с результатом (res_type = 1) у этого банка. Понятно, что нужно использовать GROUP BY... Но в процессе написания запроса возникла проблема: GROUP BY исключает применение вложенных запросов, а как по-другому узнать кол-во оплат у контракта например? Вот мой запрос:
Подскажите, как решить эту задачку? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 45 Всего: 454 |
Вы должны пересмотреть запрос так, чтобы убрались подзапросы в вычисляемых полях, а необходимые данные считались в секции таблиц-источников. Иными словами, сначала соберите данные, а потом их обсчитывайте. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Kbl4AH |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 741 Регистрация: 1.4.2008 Где: Вятка Репутация: 1 Всего: 15 |
т.е сделайте ваш запрос без group by, как и советовал Akina , а потом обработайте возвращаемые им данные с group by |
|||
|
||||
| MadCoder |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 478 Регистрация: 24.8.2007 Где: Москва Репутация: нет Всего: 2 |
Спасибо, просвятили
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Составление SQL-запросов | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |