gpt4 book ai didi

sql-server - 将 ssis 表达式日期时间转换为 int

转载 作者:行者123 更新时间:2023-12-03 16:28:19 25 4
gpt4 key购买 nike

我想在 ssis 中计算上周五的日期。下面的代码正在执行此操作。

DATEADD("dd", -1 - (DATEPART("dw", getdate()) % 7), getdate())

但它给出了 datetime 数据类型的结果,我想要 ssis 中 int 数据类型的结果。

如何转换?

DATEADD("dd", -1 - (DATEPART("dw", getdate()) % 7), getdate())

最佳答案

根据这个Microsoft article :

When a string is cast to a DT_DATE, or vice versa, the locale of the transformation is used. However, the date is in the ISO format of YYYY-MM-DD, regardless of whether the locale preference uses the ISO format.

为了将值转换为整数yyyyMMdd,

  1. 首先你必须将值转换成字符串
  2. 获取前 10 位数字
  3. 移除-分隔符
  4. 转换为整数。

您可以使用以下表达式:

(DT_I4)REPLACE(SUBSTRING((DT_WSTR,50)DATEADD("dd", -1 - (DATEPART("dw", getdate()) % 7), getdate()),1,10),"-","")

关于sql-server - 将 ssis 表达式日期时间转换为 int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56550831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com