Кроме
between можно ещё использовать
EXTRACT.
Тогда выражение ограничения для текушего месяца будет выглядеть так:
where extraxt(year from DateZajavky) = extraxt(year from current_date)
and extraxt(month from DateZajavky) = extraxt(month from current_date)
1) 2 выражения вместо одного
2) 2*n+2 раз вычисляеться extract (n - число записей)
3) Забыли про индексы ....
Поправте плиз если я не прав .....
between по индексированому полю быстрее будет IMHO......
PS а еще в сторону ORDER BY и GROUP BY рекомендуеться посмотреть ....