0

というタイムスタンプを含む3列のテーブルがありますstartson

イベント ( eventid番号、名前varchar2、startsonタイムスタンプ)

startsonwhere句で境界がどうあるべきかを示すオフセットである数値である変数があります。

例えば:

if my_var = 0 (select events that started in the last 10 days)
if my_var = 1 (select events that started 20 days ago up until 10 days ago)
if my_var = 2 (select events that started 30 days ago up until 20 days ago)
if my_var = 3 (select events that started 40 days ago up until 30 days ago)
.. and so on

これが私が試したことです:

select * 
from events 
where startson >= (sysdate-(10*my_var)) 
and startson <= (sysdate-(10*my_var+10)) 
order by startson asc

過去 10 日間に開始された数百の行があることはわかっていますが、これは行を返しません。

4

2 に答える 2