Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.20;
Скачать: CL | DM;

Вниз

Второй вопрос по SQL   Найти похожие ветки 

 
phantom2040 ©   (2003-02-28 09:04) [0]

Привет Мастера!!!
С этой задачей справились

Интересует такой вопрос, есть таблица по передаче факсов, поля следующие 1 - "категория" - в нем информация типе передаваемого сообщения к примеру: служебный, население и т.д. , 2-"Тип вызова" - в нем информация о типе вызова: Междугородний, международный, 3 - "Количество листов" - в нем сколько листов передано, 4 - "Всего" - соответственно сумма уплаченная за передачу. Задача такая нужно рассортировать по категориям по первому полю, каждую категорию рассортировать по типу вызова, просчитать количество услуг в каждой категории, просуммировать количество листов, и просумировать поле всего для каждой категории.
Вопрос можно ли такое сделать средствами языка SQL, в принципе задача решена с помошью циклов и массивов, но интересно можно ли более рационально решить все это дело, так сказать одной строкой, я уже второй раз сталкиваюсь с такой задачей и все время приходится извращаться при помощи массивов и циклов????
Таким вот способом
select TPKLIENT, TPVYZ, COUNT(*) as KUSL , SUM(ITOGO) as ITOG from faxout.db group by TPKLIENT, TPVYZ
Далее появился еще один вопрос нужно теперь сделать выборку за определенный период, скажем за текущий месяц, тогда плюс к тому описанию полей еще одно "Дата исполнения" в нем дата исполнения заказа.
Теперь посложнее в запрос это поле ни как не хочет входить, по скольку сгрупировать с ним не возможно, каким образом сначала сделать выборку по дате, а потом разгрупировать по категориям????


 
Alexandr ©   (2003-02-28 09:15) [1]

курсовик пишешь?
И много у тебя еще вопросов?
Сам разобраться не пробовал?


 
phantom2040 ©   (2003-02-28 09:26) [2]

Нет это последний, курсовик я не пишу, просто хочу оптимизировать программу, но у меня мало информации по языку SQL, а времени по электронным изданиям лазить нет, а на счет первого вопроса спасибо популярно все объяснили, а вот на счет второго........


 
Соловьев ©   (2003-02-28 09:32) [3]


...
where
(
Date>=:Cast(:PDATA1 as DateTime)
and
Date<=:Cast(:PDATA2 as DateTime)
)
Group by Kategor


 
Johnmen ©   (2003-02-28 09:35) [4]

Приведи структуру таблицы и предполагаемый запрос.


 
phantom2040 ©   (2003-02-28 09:53) [5]

Занчит корректирую задачу, сначала нужно выбрать записи по периоду текущего месяца с 1 числа до последнего, а потом из выбранного выбрать количество предоставленных услуг с групппировкой по категориям и сумированием итогов.
Это плучается запрос из запроса что ли.........


 
Johnmen ©   (2003-02-28 10:18) [6]

Поскольку в локальном SQL есть ограничения по применению вложенных запросов, то м.б. стоит посмотреть в сторону UNION.



Страницы: 1 вся ветка

Текущий архив: 2003.03.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.019 c
7-64398
GrBob
2003-01-20 20:19
2003.03.20
Перехват лампочки Scroll Lock на клавиатуре


3-63947
quake1
2003-03-03 18:39
2003.03.20
Не могу удалить записи из таблицы


14-64377
sancho{ne_hochu_parol_v_ceshe_ostavit'}
2003-03-05 19:49
2003.03.20
Подскажите словарь по программистскому сленгу


14-64291
sancho{ne_hochu_parol_v_ceshe_ostavit'}
2003-03-06 14:40
2003.03.20
дебаггер подскажите


1-64057
Новичек
2003-03-09 17:28
2003.03.20
Проектирование собственного диалога.