sql-server - 当日期字段中的值为 NULL 时,创建 SSIS 包以将单词“NULL”提取到 Excel 文件
问题描述
我有一个 SQL 表,其中包含多种格式的字段。客户要求将此表中的数据提取到 Excel 文件中,并希望“NULL”一词出现在有 NULL 的字段中。使用 SSIS 将数据提取到 Excel 时,它会将 NULL 替换为空白。我可以使用表达式 REPLACENULL(ColumnName,"NULL") 使用 SSIS 派生列成功地将 nvarchar 列的 NULL 替换为“NULL”。日期和日期时间列的表达式是什么?如果日期不为空,我想将日期写到 Excel,如果为空,我想写出“NULL”一词。必须有一个简单的方法来做到这一点,对吧?我尝试了以下不起作用的方法:
ISNULL(ColumnName) ? NULL(DT_DBDATE) : ColumnName
解决方案
好的,我不再使用手机了,所以我想我实际上了解您的需求。
你现在拥有的,真的没有任何意义。该表达式ISNULL(ColumnName) ? NULL(DT_DBDATE) : ColumnName
在字面上等同于ColumnName
(假设ColumnName
是 datatype DT_DBDATE
)。
您在这里需要做的可能是这样的:
ISNULL(ColumnName) ? "NULL" : (DT_WSTR,10) ColumnName
请注意,这不会使用特定格式,并且可能取决于您的语言设置。如果你想要一个特定的格式,你需要构建和铸造特定的部分。例如,以下将以dd
格式返回日期:
RIGHT("00" & ((DT_WSTR,10) DAY(ColumnName)),2)
然而,就我个人而言,我建议尽可能避免使用 SSIS 表达式,并使用 SQL 来完成“繁重”的工作。然后你可以返回varchar
你需要的值,并为CONVERT
.
推荐阅读
- api - Foursquare API:如果没有限制,获取将返回的场地数量
- c++ - 创建第二个对象后堆损坏
- github-actions - Github 工作流程:在操作/结帐部分找不到存储库
- r - 重写为循环以在 R 中将相似数据帧中的选定变量设置为因子
- amazon-web-services - 将选项卡从一个快速分析移动到另一个分析
- json - 无法使用 Google 存储桶中的 Biquery 解析 JSON
- javascript - 使用 Javascript 在 CSS 中添加随机背景图像
- wordpress - 我如何在 elementor 中执行此操作,需要创建更改部分的排序下拉列表
- node.js - amqplib@0.4.2 node-red-contrib-amqp#installation 不支持的引擎
- css - 在 Sitecore 富文本编辑器中使用自定义 CSS 样式