全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件
流计算

DATEDIFF

更新时间:2017-11-23 18:25:23

语法

  1. INT DATEDIFF(VARCHAR enddate, VARCHAR startdate)
  2. INT DATEDIFF(TIMESTAMP enddate, VARCHAR startdate)
  3. INT DATEDIFF(VARCHAR enddate, TIMESTAMP startdate)
  4. INT DATEDIFF(TIMESTAMP enddate, TIMESTAMP startdate)

入参

  • startdateTIMESTAMP类型或VARCHAR类型日期,日期格式:yyyy-MM-dd 或 yyyy-MM-dd HH:mm:ss。
  • enddateTIMESTAMP类型或VARCHAR类型日期,日期格式:yyyy-MM-dd 或 yyyy-MM-dd HH:mm:ss。

功能描述

计算从enddate到startdate两个时间的天数差值,日期格式可以是yy-MM-dd HH:mm:ssyy-MM-dd或timestamp,返回整数,若有参数为null或解析错误,返回null

示例

  • 测试数据
datetime1(VARCHAR) datetime2(VARCHAR) nullstr(VARCHAR)
2017-10-15 00:00:00 2017-09-15 00:00:00 null
  • 测试案例
  1. SELECT DATEDIFF(datetime1, datetime2) as int1,
  2. DATEDIFF(TIMESTAMP '2017-10-15 23:00:00',datetime2) as int2,
  3. DATEDIFF(datetime2,TIMESTAMP '2017-10-15 23:00:00') as int3,
  4. DATEDIFF(datetime2,nullstr) as int4,
  5. DATEDIFF(nullstr,TIMESTAMP '2017-10-15 23:00:00') as int5,
  6. DATEDIFF(nullstr,datetime2) as int6,
  7. DATEDIFF(TIMESTAMP '2017-10-15 23:00:00',TIMESTAMP '2017-9-15 00:00:00')as int7
  8. FROM T1
  • 测试结果
int1(INT) int2(INT) int3(INT) int4(INT) int5(INT) int6(INT) int7(INT)
30 30 -30 null null null 30
本文导读目录