Topic: Вывод суммы полей

Имеется проект. При формировании отчетов (главная форма - кнопка отчеты - затем кнопка объем задания -затем вкладка по типу наряда -кнопка по всем). Нужно вывести сумму полей base.всего и base.оя. При вставке в запрос этих полей выходит ошибка "no such columns base.всего".

SELECT
   podcinen.podcinen,
   comands.nomer_comands,
   otmetka.otmetka,
   stepenos.stepenos,
   stepenoj.stepenoj,
   vid.vid,
   [b]base.всего,
   base.оя,[/b]
   timeos.timeos,
   timeoj.timeoj

FROM
    comands


LEFT OUTER JOIN vid ON vid.id=comands.id_vid
LEFT OUTER JOIN otmetka ON otmetka.id=comands.id_otmetka
LEFT OUTER JOIN stepenos ON stepenos.id=comands.id_stepenos
LEFT OUTER JOIN stepenoj ON stepenoj.id=comands.id_stepenoj
LEFT OUTER JOIN timeos ON timeos.id=comands.id_timeos
LEFT OUTER JOIN timeoj ON timeoj.id=comands.id_timeoj
LEFT OUTER JOIN podcinen ON podcinen.id=comands.id_podcinen

ORDER BY otmetka.otmetka;

без выделенного жирным шрифтом все работает тип топ

Post's attachments

Attachment icon Наряды.rar 343.44 kb, 484 downloads since 2014-11-20 

Re: Вывод суммы полей

Попробуйте так

SELECT
   podcinen.podcinen,
   comands.nomer_comands,
   otmetka.otmetka,
   stepenos.stepenos,
   stepenoj.stepenoj,
   vid.vid,
   base.всего,
   base.ОЯ,
   timeos.timeos,
   timeoj.timeoj

FROM
    comands

LEFT OUTER JOIN base ON comands.id=base.id_comands
LEFT OUTER JOIN vid ON vid.id=comands.id_vid
LEFT OUTER JOIN otmetka ON otmetka.id=comands.id_otmetka
LEFT OUTER JOIN stepenos ON stepenos.id=comands.id_stepenos
LEFT OUTER JOIN stepenoj ON stepenoj.id=comands.id_stepenoj
LEFT OUTER JOIN timeos ON timeos.id=comands.id_timeos
LEFT OUTER JOIN timeoj ON timeoj.id=comands.id_timeoj
LEFT OUTER JOIN podcinen ON podcinen.id=comands.id_podcinen

ORDER BY otmetka.otmetka;

вы забыли подключить таблицу base в запросе
LEFT OUTER JOIN base ON comands.id=base.id_comands

Dmitry.

3 (edited by vojaka 2014-11-20 13:17:19)

Re: Вывод суммы полей

Теперь ругается на поле base.оя  "no such column base.оя"

Re: Вывод суммы полей

При использовании кириллицы в именах полей, необходимо соблюдать регистр букв, исправьте
base.оя на base.ОЯ

Dmitry.

Re: Вывод суммы полей

Неправильная работа запроса.

SELECT
   podcinen.podcinen,
   comands.nomer_comands,
   otmetka.otmetka,
   stepenos.stepenos,
   stepenoj.stepenoj,
   vid.vid,
   SUM(base.всего),
   SUM(base.ОЯ),                                        
   timeos.timeos,
   timeoj.timeoj

FROM
    comands


LEFT OUTER JOIN vid ON vid.id=comands.id_vid
LEFT OUTER JOIN otmetka ON otmetka.id=comands.id_otmetka
LEFT OUTER JOIN stepenos ON stepenos.id=comands.id_stepenos
LEFT OUTER JOIN stepenoj ON stepenoj.id=comands.id_stepenoj
LEFT OUTER JOIN timeos ON timeos.id=comands.id_timeos
LEFT OUTER JOIN timeoj ON timeoj.id=comands.id_timeoj
LEFT OUTER JOIN podcinen ON podcinen.id=comands.id_podcinen
LEFT OUTER JOIN base ON comands.id=base.id_comands

ORDER BY otmetka.otmetka;

Выводит номер последней команды (если в запросе убрать SUM(base.ОЯ)),а должен вывести по всем типам нарядов, например МЗ и перечень команд, ОР тоже перечень команд и в каждой строке сумма за команду, примерно так:
№ команды             Степ.ОС           Степ.ОЯ        время ОС             время ОЯ               офицеров ОС              офицеров ОЯ
МЗ
00001 РСЗ                  Пов.                    ------               Ч+24.00                   ------                          10

Post's attachments

Attachment icon Наряды.rar 343.49 kb, 508 downloads since 2014-11-20 

Re: Вывод суммы полей

Попробую. Ошибка ушла, но данные выводятся не так как хотелось. У меня есть данные по трем видам МЗ, ОР, ТН. А в отчете выводится одна сумма за все без деления.

Re: Вывод суммы полей

vojaka
Отправил вам на e-mail доработанный вариант проекта.

Dmitry.