Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Не получается SQL-запрос [D7, IB6.x]


Alexey ©   (2008-04-05 20:55:00) 

Господа, срочно требуется ваша помощь,а то я уже ничего не понимаю. Есть таблица SP_RASP (kod, fio, pred) и таблица VHOD (kod, pcvsego, podp, usminp, usvsp). Таблица VHOD является как бы сводной, т.е. там собираются суммы по коду, код может повторяться. Таблицы связал в IBExpert через поле kod. Хочу сделать следующий запрос: Вывести в сгруппированом виде: kod, fio, pred, sum(pcvsego), sum(podp), sum(usminp), sum(usvsp), т.е., чтобы в каждой строке выдавалась итоговая информация по конкретному коду. Пишу следующий SQL-Запрос:

select SP_RASP.kod, SP_RASP.fio, SP_RASP.pred, SUM(VHOD.pcvsego) "Podp_cena", SUM(VHOD.usminp) "Uslugi svyzi min", SUM(VHOD.usvsp) "Uslugi svyzi vsego",  SUM(VHOD.podp) "Summa_prem" from SP_RASP INNER JOIN VHOD ON SP_RASP.kod=VHOD.kod
group by SP_RASP.kod

При активации запроса сразу же выводится следующее сообщение об ошибке:

Dynamic SQL Error
SQL error code = -104
invalid column reference

Как только убираю текстовые поля, коими здесь являются fio И pred, запрос спокойно выполняется. В чём ошибка? Или может быть запрос изначально неправилен?
Подскажите пожалуйста, очень необходим данный запрос.


MsGuns   (2008-04-07 21:53:00) [1]

Используйте подзапросы


kaif   (2008-04-06 23:50:00) [2]

При использовании агрегатных функций группировка должна делаться по всемоставшимся полям. То есть либо нужно вообще выкинуть те два поля из запрооса, либо добавить и их тоже в выражение group by. А иначе сервер не будет знать, что в них выводить, как справедливо заметил Anatoly Podgoretsky ©   (05.04.08 21:02) [1].


Anatoly Podgoretsky   (2008-04-05 21:02:00) [3]

> Alexey  (05.04.2008 20:55:00)  [0]

Да тут полная ерунда написана, какая еще группировка, когда в выборке диеин поля SP_RASP.fio, SP_RASP.pred, их чего прикажешь делать с помощью генератора случайных чисел, ты или убери их совсем или добавь в группировку. А еше лучше если посмотришь справку по select и group by


Наверх

Титульная страница Поиск, карта сайта Написать письмо