Resultado:
No meu caso, utilizei o SQL SERVER e o Power BI
Criei a consulta utilizando o SGBD Management
CASE
WHEN MONTH(PPESSOA.DTNASCIMENTO) = MONTH(GETDATE()) THEN 'ANIVERSARIANTE NO MES'
ELSE 'NÃO ANIVERSARIANTE'
END AS STATUS_ANIVERSARIO_MES,
CASE
WHEN MONTH(PPESSOA.DTNASCIMENTO) = MONTH(GETDATE()) AND DAY(PPESSOA.DTNASCIMENTO) = DAY(GETDATE()) THEN 'ANIVERSARIANTE NO DIA'
ELSE 'NÃO ANIVERSARIANTE'
END AS STATUS_ANIVERSARIO_DIA,
CASE
WHEN MONTH(PPESSOA.DTNASCIMENTO) = MONTH(GETDATE()) THEN 'ANIVERSARIANTE NO MES'
ELSE 'NÃO ANIVERSARIANTE'
END AS STATUS_ANIVERSARIO_MES,
CASE
WHEN MONTH(PPESSOA.DTNASCIMENTO) = MONTH(DATEADD(MONTH, 1, GETDATE())) THEN 'ANIVERSARIANTE PRÓXIMO MÊS'
ELSE 'NÃO ANIVERSARIANTE'
END AS STATUS_ANIVERSARIO_mesproximo
No Power BI carreguei a consulta criada:
A tabela ficou assim:
e no relatório, em filtros, eu utilizei as colunas acima para mostrar o que eu queria:
Aniversariantes do dia
Aniversariantes do mês
Aniversariantes do mês seguinte
Clique aqui para visualizar a consulta completa.
https://github.com/amandarnascimento/sqlserver/blob/main/Aniversariantes