我要将这两个表中的两个日期之间的间隔天数算出来,用sql语句怎么做,

此to_date('20020405','yyyymmdd')取决于您的上诉日期存储数据的方式。
如果数据为20020405,则为yyyymmdd。
如果是2002-04-05,就是你写的yyyy-mm-dd。
我现在使用的数据库不是Oracle,所以不知道Oracle之间的区别。
你可以试试另一种:这是我百度的答案。
我希望它对你有用。
Selectfloor(sysdate-to_date('20020405','yyyymmdd')))fromdual;

SQL计算两个日期相差多少天数的函数

DATEDFF返回由双组天数限制的多个日期和时间。
语法数据部分参数(datepart、startdate、enddate)是指定日期的哪一部分计算差值的参数。
Microsoft®SQLServer可以识别下表数据元素和缩写。
日期部分缩写yearyy、aaaaquarterqq、qMonthmm、mdayofyeardy、yDaydd、dWeekwk、wwHourhh分钟mi、nsecondss、smallsecondmstartdate是从开始计算的天数。
startdate是一个返回时间或小日期时间值或日期格式字符串的表达式。
因为小时间只精确到分,秒,毫秒在使用小时间值时始终为0。
如果仅指定年份的最后两位数字,则小于或等于“两位数年份配置选项”值的数字的最后两位数字与间隔年份处于同一世纪。
比期权价值最后两位数字大的一个世纪是该年结束之前的一个世纪。
例如,如果twodigityearcutoff为2049(默认),则49将解释为2049,2050将解释为1950。
为了避免歧义,使用四年。
有关时间值规范的更多信息,请参阅时间格式。
有关日期规范的更多信息,请参阅datetime和smalldatetime。
enddate是结束日期系统。
enddate是一个返回时间或分钟值或日期字符串格式的表达式。
返回注释起始日期减去结束日期的整数类型。
如果开始日期晚于结束日期,则返回负值。
当结果超出整数值的范围时,DATEDFF会生成错误。
对于毫秒,最大数为24天、20小时、31分钟和23,647秒。
对于秒,最大数为68年。
计算是在分钟、秒和毫秒的时间限制内进行的,因此DATEDFF的结果对于所有数据类型都是一致的。
结果是一个有符号整数值,等于分隔第一时间段和第二时间段的数据点的数量。
例如,1月4日(星期日)到1月11日(星期日)之间的周数为1。
示例此示例确定标题发布日期与pubs数据库中的当前日期之间的天数。
USEpubsGOSELECTDATEDIFF(天,pubdate,getdate())ASno_of_daysFROMtitlesGO

SQL中怎么计算两日期之间的天数?

按小时统计,符合条件的是每天的小时数=selectdatediff(hh,'2007-10-129:00:00','2007-10-1218:00:00')