sql-server - SSIS 使用 SSIS 表达式将 mddyyyy 和 mmddyyyy 格式的日期转换为日期格式
问题描述
我在一个来源中以 aMMddyyyy
和Mddyyyy
格式接收日期,如果月份有 1-9 位数,则月份为 1 位数,如果月份在 10-12 之间,则为 2 位数,我需要一个 SSIS 表达式能够将它们转换为日期格式。
前 2051994
或12051994
两者都来自同一来源,但很难使用相同的 SSIS 表达式进行转换
解决方案
您可以使用以下表达式将字符串转换Mddyyy
为MMddyyyy
DateTime 值:
(DT_DATE)(RIGHT("0000" + RIGHT(RIGHT("0" + [DateColumn],8),4),4) +
"-" + RIGHT("00" + LEFT(RIGHT("0" + [DateColumn],8),2),2) +
"-" + RIGHT("00" + SUBSTRING(RIGHT("0" + [DateColumn],8),3,2),2))
推荐阅读
- r - 创建一个函数来迭代 R 中一个大列表中的 tibble 元素
- scala - 使用 udf 在 scala 中抛出 classNotFoundException
- docker - 无法删除 Docker 容器的中间文件系统
- python - 根据类别 django 获取数据
- c# - 我的单元测试因 TypeLoadException 而失败。这可能是 Visual Studio 错误、Nuget 包交互还是其他原因?
- c# - ASP.NET 页面 CSS 样式在 Visual Studio 中加载,但在浏览器中不加载
- laravel - Laravel - 如何添加全局信息,如 \Auth::user()
- php - 动态 mysql -> excel 导出
- javascript - Puppeteer PDF 从云端生成空白页,与邮递员一起工作。有什么想法吗?
- algorithm - 什么是近乎完全的二叉树?