Намерих отговора на въпроса си.
очевидно трябва да имате предвид и настройките на часовата зона, когато изчислявате стойността на епохата
- добавете 10 часа (10*60*60*1000 милисекунди) към стойността на епохата - текущата стойност на епохата е в GMT, така че за да стане EST (GMT+10), добавих това.
-
Използва се TO_TIMESTAMP_TZ вместо to_date
SELECT tableA.columnA,tableB.columnB FROM tableA INNER JOIN tableB ON tableA.aId = tableB.aId WHERE (TO_TIMESTAMP_TZ('1970-01-01 00:00:00 +10:00','yyyy-MM-dd hh24:mi:ss TZH:TZM') + ((tableB.epochValue+(10*60*60*1000))/60/60/24/1000)) > to_date('##FROM_DATE## +10:00', 'yyyy-MM-dd hh24:mi:ss TZH:TZM') AND (TO_TIMESTAMP_TZ('1970-01-01 00:00:00 +10:00','yyyy-MM-dd hh24:mi:ss TZH:TZM') + ((tableB.epochValue+(10*60*60*1000))/60/60/24/1000)) <= to_date('##TO_DATE## +10:00', 'yyyy-MM-dd hh24:mi:ss TZH:TZM');