Tidak sepenuhnya jelas apa yang Anda inginkan untuk lakukan , tetapi inti pertanyaan Anda membuat saya condong ke arah menyarankan agar Anda melihat ke dalam aritmatika modular:dalam SQL, a % b
mengembalikan sisa ketika a
dibagi dengan b
- jika tidak ada sisa (yaitu a % b = 0
), lalu a
harus berupa kelipatan tepat dari b
.
Dalam kasus Anda, saya berpikir Anda mencoba mencari acara di mana waktu antara acara dimulai dan beberapa literal yang diberikan adalah kelipatan tepat dari interval acara:yaitu, (literal - event_start) % event_interval = 0
. Jika bukan nol, nilainya adalah waktu kemunculan berikutnya setelah literal
(dan, oleh karena itu, untuk menentukan apakah kejadian berikutnya terjadi dalam beberapa periode waktu, katakanlah sehari, seseorang akan menguji untuk melihat apakah sisanya kurang dari konstanta tersebut misalnya (literal - event_start) % event_interval < 86400
).
Jika ini bukan yang Anda cari, harap klarifikasi dengan tepat apa yang ingin dicapai oleh kueri Anda.