【问题标题】:SSIS expression builder: convert date/time to Epoch timestampSSIS 表达式生成器:将日期/时间转换为纪元时间戳
【发布时间】:2023-03-28 16:27:01
【问题描述】:

我正在尝试构建一个表达式以将日期/时间参数转换为将在 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() )" 失败。表达式可能包含无效标记, 不完整的令牌或无效元素。可能格式不太好, 或者可能缺少必需元素的一部分,例如括号。

这个语法:

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

产生:

尝试将表达式 "DATEDIFF("s", CAST("19700101") 解析为 DT_WSTR), GETDATE() )" 失败。表达式可能包含无效 令牌、不完整的令牌或无效元素。可能不是 格式正确,或者可能缺少所需元素的一部分,例如 括号。

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

【问题讨论】:

    标签: sql-server ssis ssis-2012


    【解决方案1】:

    试试这个:

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

    【讨论】:

      猜你喜欢
      • 2018-08-03
      • 2013-01-08
      • 2014-01-25
      • 1970-01-01
      • 2012-09-06
      • 2021-03-01
      • 2019-11-14
      • 1970-01-01
      • 2022-08-04
      相关资源
      最近更新 更多