第1个回答 2013-09-14
用程序倒是可以做。。用SQL。。没听过说。。。。。假如二个日期之间相差1年,那你是不是得到365条记录?有意义吗?查询相差多少天的方法我这有。java的。给你看看。/**
* 比较两个日期相差天数
*
* @param date1
* @param date2
* @return
*/
public int compareToDate(String date1, String date2) {
Date date_1 = switchStringToDate(date1);
Date date_2 = switchStringToDate(date2);
return compareToDate2(date_1, date_2);
}
// 将一个日期字符串转化成日期
public Date switchStringToDate(String sDate) {
Date date = null;
try {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
date = df.parse(sDate);
} catch (Exception e) {
System.out.println("日期转换失败:" + e.getMessage());
}
return date;
}
/**
* 以天为单位比较日期大小
*
* @param date1
* @param date2
* @return
*/
public int compareToDate2(Date date1, Date date2) {
long time1 = date1.getTime();
long time2 = date2.getTime();
long time3 = time2 - time1;
long newDay = time3 / 1000 / 60 / 60 / 24;
return Integer.parseInt(newDay + "");
}
第4个回答 推荐于2017-11-26
declare @date1 datetime,@date2 datetime
set @date1='2009-10-01'
set @date2='2009-10-10'select [day]=convert(varchar(10),dateadd(dd,number,@date1),120)
from master..spt_values
where type='p' and number <= datediff(dd,@date1,@date2)day
----------
2009-10-01
2009-10-02
2009-10-03
2009-10-04
2009-10-05
2009-10-06
2009-10-07
2009-10-08
2009-10-09
2009-10-10(10 行受影响)
这个方法很简便的,而且款年的日期也能精确的计算主来中间的日期本回答被网友采纳