Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Repetindo eventos do calendário e algumas contas finais


Não está totalmente claro o que você deseja que sua consulta faça , mas a essência da sua pergunta me leva a sugerir que você analise a aritmética modular:em SQL, a % b retorna o restante quando um é dividido por b - se não houver resto (ou seja, a % b =0 ), então um deve ser um múltiplo exato de b .

No seu caso, eu acho você está tentando encontrar eventos em que o tempo entre o início do evento e algum literal fornecido é um múltiplo exato do intervalo do evento:isto é, (literal - event_start) % event_interval =0 . Se for diferente de zero, o valor é o tempo até a próxima ocorrência após literal (e, portanto, para determinar se a próxima ocorrência ocorre dentro de algum período de tempo, digamos um dia, deve-se testar para ver se o restante é menor que tal constante, por exemplo (literal - event_start) % event_interval <86400 ).

Se não for isso que você procura, esclareça exatamente o que sua consulta está tentando alcançar.