lead()函数
用法
lead(字段名称,行数,默认值)
-
字段名称:从后面的行里取哪个字段;
-
行数:取后面的第几行数据
注意:这个字段可省略,省略就等同于设为1
-
默认值:如果到最后一行了,也就是没有下一行了,这个字段填什么
注意:这个字段可省略,省略就等同于设为null
实例:
lead(timestamp, 1, null)
意思是:取后面第一行的timestamp
字段,如果到最后一行了,这个字段就填null。
lag跟lead的用法完全一样,只不过lead是取后面某行的数据,而lag是前面。
DATE_ADD() 函数
DATE_ADD() 函数向日期添加指定的时间间隔。
语法
DATE_ADD(date,INTERVAL expr type)
-
date 参数是合法的日期表达式
-
expr 参数是您希望添加的时间间隔
type 参数可以是下列值:
Type 值 |
MICROSECOND |
SECOND |
MINUTE |
HOUR |
DAY |
WEEK |
MONTH |
QUARTER |
YEAR |
SECOND_MICROSECOND |
MINUTE_MICROSECOND |
MINUTE_SECOND |
HOUR_MICROSECOND |
HOUR_SECOND |
HOUR_MINUTE |
DAY_MICROSECOND |
DAY_SECOND |
DAY_MINUTE |
DAY_HOUR |
YEAR_MONTH |
实例:向 "OrderDate" 添加 2 天
SELECT OrderId,DATE_ADD(OrderDate,INTERVAL 2 DAY) AS OrderPayDate
FROM Orders
DATEDIFF() 函数
DATEDIFF() 函数返回两个日期之间的天数。
语法
DATEDIFF(
date1
,
date2
)
-
date1 和 date2 参数是合法的日期或日期/时间表达式。
-
结果返回
date1
-date2
的天数
注释:只有值的日期部分参与计算。
实例:
SELECT DATEDIFF('2008-12-30','2008-12-29') AS DiffDate
结果是1
SELECT DATEDIFF('2008-12-29','2008-12-30') AS DiffDate
结果是 -1