SQL中的函数的日期差异

时间:2017-07-29 12:45:30

标签: sql

我对SQL很陌生。我的马数据库中有两列 - 日期和马名。日期是赛马比赛的日期和马名。我想要第3列来计算马匹之前和之间的日期差异。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

日期函数在SQL中有所不同。一种常见的方法就是减法。

要获取上一个日期,您可以使用ANSI标准lag()函数(并非在所有数据库中都可用)。

查询看起来像:

select h.*,
       (racedate - lag(racedate) over (partition by horse order by racedate) as daysSinceLastRace
from horses h;

第一场比赛将是NULL

(注意:有些数据库使用“datediff()”函数来表示天数的差异,而不是减法。)