我应该使用什么查询来获得两个给定日期之外的日期列表(这是来自表中保存的数据)。date1 date2)
例如,如果表日期为
date1 |date2
2016-9-5 |2016-9-10
2016-9-13|2016-9-15
输出应该是date1到date2之外的日期,如:2016-9-4,2016-9-3…等等......还有2016-9-11、2016-9-12……2016-9-16等
我使用的数据类型是date无法从表中获取外部日期,因为表中没有外部日期。但是你可以编写程序来获取外部日期。从表和
中调用date1和date2List<Date> dates = new ArrayList<Date>();
Date date = date1;
for (int i = 0; i < MAX_RESULT && !date.after(date2): i++) {
date = DateUtils.addDays(date, 1);
dates.add(date);
}
您可以这样做(只是一个示例,因为您没有提供表结构和期望的结果):
SELECT date FROM table where date<date1 AND date>date2
这将选择所有不在date1和date2之间的行
SELECT date FROM table WHERE date BETWEEN date1 AND date2
这将选择在date1和date2之间的所有行。
如果date1<date2