РЕДАКТИРОВАТЬ: база данных Access 2007
Привет, я новичок здесь, и мне нужна помощь:
У меня есть три таблицы:
- техников (Id, tech_name, is_active)
- type_services (идентификатор, имя_сервера, is_active)
- сервисов (Id, date_time, prod_name, количество, serv_type, tech_name, is_active)
Я должен сделать отчет, содержащий:
- Количество услуг на одну технологию (SUM (количество))
- Количество видов услуг на одну технологию
- Всего за каждую услугу
- Всего услуг
* +1034 * Пример: * * одна тысяча тридцать пять
TECH_NAME TYPE_SERV1 TYPE_SERV2 TYPE_SERV3 TYPE_SERV4 TYPE_SERV5 TYPE_SERV6 TOTAL<br/>
NAME1 2 0 3 7 15 52 79
NAME2 0 0 1 6 18 45 70
NAME3 0 0 2 3 13 38 56
NAME4 1 1 0 3 11 21 37<br/>
TOTAL 3 1 6 19 57 156 242<br/>
Все с использованием интервала дат
ПРИМЕЧАНИЕ. В таблице служб я непосредственно использую строковое имя serv_type и tech_name, поэтому не использую числовой идентификатор
Это NEW sql, он работает, но если возможно сделать все это в предложении SQL без дополнительного кода C #, потому что не всегда есть службы одного типа на службах
ВЫБРАТЬ
COUNT (Srvs.serv_type) AS numReg,
Сумма (Srvs.quantity) AS,
Techs.tech_name AS tchs,
Srvs.serv_type AS srv
ОТ
Техники AS Techs,
type_services AS TySrv,
услуги AS Srvs
ГДЕ
(Techs.is_active = true И
TySrv.is_active = true И
Srvs.is_active = true) И
(Srvs.date_time МЕЖДУ # 2010/06/01 00: 00: 00 # И # 2010/08/30 23: 59: 59 #
AND Srvs.tech_name = Techs.tech_name)
AND Srvs.serv_type = TySrv.serv_name
GROUP BY Srvs.serv_type, Techs.tech_name
ЗАКАЗАТЬ Techs.tech_name ASC
До этого SQL у меня было три SQL, чтобы сделать этот отчет xD, поэтому мне нужно, чтобы это было проще с одним SQL
Спасибо, и я надеюсь, что вы знаете, что я пытаюсь сказать