Het is niet helemaal duidelijk wat u wilt dat uw zoekopdracht doet , maar de kern van je vraag doet me geneigd zijn te suggereren dat je naar modulaire rekenkunde kijkt:in SQL, a % b
retourneert de rest wanneer a
wordt gedeeld door b
- als er geen rest is (d.w.z. a % b = 0
), dan a
moet een exact veelvoud zijn van b
.
In jouw geval, denk ik u probeert gebeurtenissen te vinden waarbij de tijd tussen het begin van de gebeurtenis en een gegeven letterlijke waarde een exact veelvoud is van het gebeurtenisinterval:dat wil zeggen, (literal - event_start) % event_interval = 0
. Als het niet-nul is, is de waarde de tijd tot het volgende voorkomen na literal
(en daarom, om te bepalen of die volgende gebeurtenis binnen een bepaalde tijdsperiode plaatsvindt, bijvoorbeeld een dag, zou men testen of de rest kleiner is dan zo'n constante, bijvoorbeeld (literal - event_start) % event_interval < 86400
).
Als dit niet is wat je zoekt, verduidelijk dan precies wat je vraag probeert te bereiken.