› Fóruns › SQL e PL/SQL › [DÚVIDA] COUNT › [DÚVIDA] COUNT
[quote=”burga”:3rcz02sw]Não sei se entendi direito, mas olha onde eu cheguei:
WITH DATAS AS (
SELECT TRUNC(MIN(DATAADMISSAO),'MM') DATA1, LAST_DAY(SYSDATE) DATA2
FROM FUNCIONARIOS),
DATAS2 AS (
SELECT TRUNC(ADD_MONTHS(DATA1, LEVEL - 1),'MM') DATA_PESQUISA
FROM DATAS
CONNECT BY TRUNC(ADD_MONTHS(DATA1, LEVEL - 1),'MM') <= DATA2
ORDER BY 1)
SELECT TO_CHAR(DATA_PESQUISA,'MM/YYYY') MES_ANO, COUNT(*) NUMERO_FUNCIONARIOS
FROM FUNCIONARIOS, DATAS2
WHERE DATA_PESQUISA
BETWEEN TRUNC(DATAADMISSAO,'MM')
AND LAST_DAY(NVL(DATADEMISSAO,SYSDATE))
GROUP BY TO_CHAR(DATA_PESQUISA,'MM/YYYY');
Neste caso, é considerada a data de demissão e não a situação… E se funcionario foi demitido em qualquer dia de janeiro, ele ainda é contado no mês de janeiro, funcionários admitidos no mês também são contados…
Espero que entenda a bagunça do código!! Pode ter erro pois não tenho como testar aqui…[/quote]
Gerei a sentença mas não retornou nenhum valor.
Vou ver oq consigo aqui galera.
Um forte abraço e obrigado pela ajuda de todos.