कुछ इस तरह:
select trunc(your_date, 'hh') - number_of_hours_to_go_back/24 start_dt,
trunc(your_date, 'hh') end_dt
from dual;
यदि आपको SQL कथन में इसकी आवश्यकता है, या:
declare
v_date date := to_date('10/12/2016 10:15:23', 'dd/mm/yyyy hh24:mi:ss');
v_start_dt date;
v_end_dt date;
v_num_hours_back integer;
begin
v_start_dt := trunc(v_date, 'hh') - v_num_hours_back/24;
v_end_dt := trunc(v_date, 'hh');
end;
/
यदि आपको पीएल/एसक्यूएल में इसकी आवश्यकता है (एसक्यूएल और पीएल/एसक्यूएल के बीच अनावश्यक संदर्भ स्विचिंग को बचाने के लिए)।