SSIS表达式构建器:将日期/时间转换为Epoch时间戳

时间:2015-09-24 03:14:31

标签: sql-server ssis ssis-2012

我正在尝试构建一个表达式,将日期/时间参数转换为将在Url参数字符串中使用的Epoch时间戳。

我想我会首先尝试GetDate(),然后替换实际参数(@[$Package::endingDate])。

此语法:

DATEDIFF("s", "19700101", GETDATE() )

产生

  

“DATEDIFF”功能不支持数据类型“DT_WSTR”   参数编号2.参数的类型不能隐式   转换为函数的兼容类型。执行此操作   操作,操作数需要使用强制转换显式转换   操作

此语法:

DATEDIFF("s", (DT_WSTR)"19700101", GETDATE() )

产生

  

尝试解析表达式“DATEDIFF(”s“,(DT_WSTR)”19700101“,   GETDATE())“失败。表达式可能包含无效的令牌,a   不完整的令牌或无效的元素。它可能不是很好,   或者可能缺少必要元素的一部分,例如括号。

此语法:

DATEDIFF("s", CAST("19700101" AS DT_WSTR), GETDATE() )

产生

  

尝试解析表达式“DATEDIFF(”s“,CAST(”19700101“as)   DT_WSTR),GETDATE())“失败。表达式可能包含无效   令牌,不完整的令牌或无效的元素。它可能不是   格式良好,或者可能缺少必要元素的一部分,例如a   括号。

有没有办法将日期/时间转换为大纪元时间戳,包括时区调整?

1 个答案:

答案 0 :(得分:0)

试试这个:

DATEDIFF("SECOND",(DT_DBTIMESTAMP)"01/01/1970",GETDATE())