У меня есть этот запрос (для Oracle):Group в месяц в запросе на выборку
SELECT TO_DATE(TO_CHAR(CREATIONDATE, 'MM.YYYY'), 'MM.YYYY') as month,
SUM(count(*)) over (order by to_date(TO_CHAR(CREATIONDATE, 'MM.YYYY'),'MM.YYYY')) as total
FROM person
GROUP BY TO_DATE(TO_CHAR(CREATIONDATE, 'MM.YYYY'), 'MM.YYYY')
Он подсчитывает количество людей, группы в месяц и в правильном порядке:
Ex. 01.2014, 02.2014, ..., 01.2015. 02,2015 ...
Это работает, но:
- Есть ли лучший способ сделать это?
- Мне нужен один запрос для Oracle, Sql-Server и PostGre SQL. Есть ли способ сделать это? Все, что я могу использовать string.replace в моем приложении, чтобы немного изменить запрос ..
Чтобы уточнить, вам нужен один запрос с тем же sytax, который будет работать с Oracle, SQL Server и Postgres? – Tanner
Да, я хочу знать, возможно ли это, по крайней мере, с небольшими изменениями во время выполнения в моем приложении со String.Replace – user3544117
Проверьте мой ответ. Я рассматривал только Oracle. –