Oracle SQL在日期之间,除了几个月

Ben*_*oit 0 sql oracle date

我有一个查询,基本上可以从当前日期获得有关过去2年的信息.

DateTime jodaCurrentDate = new DateTime();
DateTimeFormatter formatter = DateTimeFormat.forPattern("YYYY-MM-dd HH:mm");
String startingDate = formatter.print(jodaCurrentDate.minusYears(2));
String endingDate = formatter.print(jodaCurrentDate);   

"DATE BETWEEN TO_DATE (\'"+ startingDate +"\',\'YYYY-MM-DD HH24:MI\') AND " +
    "TO_DATE (\'"+ endingDate +"\',\'YYYY-MM-DD HH24:MI\')";
Run Code Online (Sandbox Code Playgroud)

例如,是否可以仅在特定月份(01-02-03-10-11-12)检索?

Nic*_*ick 5

此where子句过滤两个日期之间的日期,还包括月份过滤器.将some_date替换为您的日期列.

where some_date between to_date('01/01/2015','MM/DD/YYYY') and to_date('12/31/2015','MM/DD/YYYY')
and extract(month from some_date) in (1, 2, 3, 10, 11, 12);
Run Code Online (Sandbox Code Playgroud)