This may be simple, but I cannot figure out the correct and simplest way to query a table which contains a date col to return the rows in which the date belongs to the current academic year.
Knowing that for academic year I mean the period from the 1st of September of a year to the 31st of august of the next one, how can you obtain the right dataset from a table that look like this:
TABLE ---- Date ---- 12/08/2015 15/06/2015 01/09/2015 <- 07/10/2015 <- 09/11/2015 <- 21/12/2015 <- 15/01/2016 <- 18/03/2016 <- 28/04/2016 <- 29/06/2016 <- 30/07/2016 <- 12/09/2016 23/11/2016
Advertisement
Answer
This is an Oracle equivalent of Andomar’s post –
select * from dts where case when extract (month from dt) < 9 then extract (year from dt) - 1 else extract (year from dt) end = extract (year from sysdate)