Preciso saber se um registro ocorreu novamente em um período de 7 dias. Para isso conto com uma tabela que salva os registros e a data de ocorrência. Por exemplo:
Registro: x | Data: 13/03/2017 Registro: y | Data: 14/03/2017 Registro: x | Data: 17/03/2017 Registro: x | Data: 21/03/2017 Registro: z | Data: 31/03/2017
Para isso o usuário informaria uma data inicial e uma data final, por exemplo: registros entre 01/03 e 31/03.
Preciso que o resultado me indique quantas vezes no período o registro se repetiu usando o critério que a diferença em dias de um para o outro deve ser de no máximo 7 dias. No momento estou usando o seguinte código, que apenas consegue me trazer no período quantas vezes o mesmo registro ocorreu, mas não tem o critério dos 7 dias.
SELECT codigo, data FROM aviso WHERE data IS NOT NULL AND data BETWEEN To_Date(‘01/03/2017 00:00:00’, ‘DD/MM/YYYY HH24:MI:SS’) AND To_Date(‘31/03/2017 00:00:00’, ‘DD/MM/YYYY HH24:MI:SS’) --HAVING Count(*) > 1 ORDER BY codio
Alguem teria uma ideia de como fazer isso? Estou usando oracle.