What Oracle SQL syntax do I need to find transactions that occurred during time intervals of a day for a period of a year?
Simply add a WHERE-condition like this:

WHERE datecol BETWEEN DATE '2014-01-01' AND DATE '2014-12-31' 
  AND EXTRACT(HOUR FROM CAST(datecol AS TIMESTAMP(0))) BETWEEN 15 AND 23


To dynamically define the previous year:

WHERE datecol &gt;= ADD_MONTHS(TRUNC(CURRENT_DATE, 'year'), -12) -- jan 1st previous year
  AND datecol &lt; TRUNC(CURRENT_DATE, 'year')                   -- jan 1st current year
  AND EXTRACT(HOUR FROM CAST(datecol AS TIMESTAMP(0))) BETWEEN 15 AND 23