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

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

возможно ли составить запрос? [D6, Paradox]


Владимир С. ©   (2004-12-08 09:17:00) 

Уважаемые, Мастера!
возможно ли составить запрос?

Есть таблица со столбцами
Date_pr и Mera
в которые записывают дату приказа и меру взыскания или поощрения.
Подсчитать count каждого взыскания или поощрения получилось

select  mera, count(mera) from pric
group by mera

Подскажите возможно ли усложнить запрос и подсчитать
сколько было взысканий или поощрений в первом квартале, втором и т.д.

Спасибо!


Val   (2004-12-09 10:03:00) [1]

> [9] Johnmen ©   (08.12.04 20:00)
если нет...ну тогда и продолжим. :)


Johnmen   (2004-12-08 20:00:00) [2]

>Val ©   (08.12.04 18:18) [8]
>...можно додумать самому.

Остаётся надеяться, что автор так и поступит :)

>...хотя в данном случае - разве будет разница?

Даже, наверное, с ALL лучше, в смысле, быстрее...


Val   (2004-12-08 18:18:00) [3]

>[6] Johnmen ©   (08.12.04 17:45)
Ну да, каюсь. Но я на автора не работаю, можно додумать самому.
Про union согласен, хотя в данном случае - разве будет разница?


stud   (2004-12-08 18:15:00) [4]

либо ввести доп поле - квартал и в одном запросе группировкой


Johnmen   (2004-12-08 17:45:00) [5]

>Val ©   (08.12.04 14:42) [4]

Либо только COUNT, либо группировка. :)
И, наверное, первое поле Quarter и UNION без ALL.


Val   (2004-12-08 14:43:00) [6]

только даты проверьте в between.


Val   (2004-12-08 14:42:00) [7]

select  mera, count(mera) as Cnt, 1 as Quarter
from pric
where Date_pr (between '01.01.2004' and '01.04.2004')
union all
select  mera, count(mera) as Cnt, 2 as Quarter
from pric
where Date_pr (between '01.04.2004' and '01.07.2004')
union all...


Владимир С.   (2004-12-08 14:21:00) [8]

Спасибо! Помогло!
Но следом следующая проблема.
Если производить запрос сразу для 4 кварталов, то как это будет выглядеть?
select  mera, count(mera) from pric
where Date_pr (between '01.01.2004' and '01.04.2004')
and (between '01.04.2004' and '01.07.2004')
group by mera
и его модификации
что - то пока не идёт


Владимир С.   (2004-12-08 14:20:00) [9]

Спасибо! Помогло!
Но следом следующая проблема.
Если производить запрос сразу для 4 кварталов, то как это будет выглядеть?
select  mera, count(mera) from pric
where Date_pr (between '01.01.2004' and '01.04.2004')
and (between '01.04.2004' and '01.07.2004')
group by mera
и его модификации
что - то пока не идёт


Dolt   (2004-12-08 09:32:00) [10]

Например для первого квартала :
select  mera, count(mera) from pric
where Date_pr between '01.01.2004' and '01.04.2004'
group by mera


Наверх

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