问题标签 [derived-column]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssis - 带有 Visual Studio 派生列的 SSIS
我正在尝试从文本文件中获取列表并将其导出到 Excel。
对于排名 14、19 和 20,Millions 列是一个空字符串。我已经通过使用条件拆分将数据与指定了百万的行和未指定的行分开。我现在要做的是获取未指定的 3 行,并使用派生列转换写入“未指定”。我认为我可以做类似的事情(在表达式选项卡中):
但是,当我在输出上运行数据查看器时,三列在百万列中显示“假”。
我做了一个奇怪的工作,但我确信有更好的方法:
有人能告诉我为什么我不能使用我的第一个解决方案吗?我假设它与布尔值有关,但数据类型是字符串。
sql-server - 无法在高级编辑器的输出选项卡中看到派生列输出
我将派生列名称 Gender 配置为用表达式替换 Gender 列
Gender == "M" ? "Male" : "Female"
正如我们所见,性别列的输入长度为 1,但我正在转换该列并将长度增加到最大值 6。我发现可以从高级编辑器更改长度,否则如果我不更改长度,我会收到截断错误.
如您所见,Gender 列未显示在 Output 列中,并且长度也已分级且无法更改。
请让我知道如何让 Gender 列显示在 Output Derived Column 中以及如何更改长度。
sql-server - SSIS:派生列表达式中的IF else
我正在尝试转换时间在平面文件源中的写入方式,因此它实际上看起来像时间。(如果这有任何意义)。
现在我将它作为1215
, 630
, 10
, 1
,.. 等。所以它可以是 4-1 个字符长,所以我需要根据列的长度对其进行转换。
我在派生列中使用表达式执行此操作,但是我似乎无法使其工作,不确定我的语法是否错误或什么,表达式看起来像这样,但是我收到错误:
当我只使用以下两个值时,它似乎工作得很好:
我将不胜感激任何帮助,谢谢!
if-statement - SSIS-convert IF and ELSE 语句或 SSIS 派生列表达式中的 Case When 语句
SSIS-convert IF 和 ELSE 语句或 SSIS 派生列表达式中的 Case When 语句。这里的一个假设是,用户存在于 SAP 和 Salesforce 的两个系统中,该用户的电子邮件将是相同的,我们可以填充任何电子邮件 ID,但如果用户只存在于两个系统中的任何一个中,我们希望将其填充到目标表中. 如何编写 SSIS 派生列表达式。
例如:
或者
sql-server - SSIS - 派生列 - 案例陈述 - 字符索引和子字符串
我在 T-SQL 中进行了以下转换:
如何使用 SQL Server Integration Services 2014 将其放入派生列对象中的表达式中?
问候!!!
sql-server - 在 SSIS 中从 CSV 导入 yyyyMMdd 日期
我有 12 列使用yyyymmdd格式。在数据流任务中,我有一个平面文件源、一个派生列任务和一个OLE DB 目标。我将以下表达式应用于派生列任务中的这些字段:
它不断让我在子字符串之前转换字段,但我在Connection Manager中将字段设置为DT_STR。目标字段在 SQL Server中采用DATE格式。SSIS 总是显示“由于可能丢失数据而无法转换”错误。我检查了 CSV 中的原始数据,没有看到任何不合适的日期。一切都符合格式。
我也尝试使用这里建议的数据转换任务,但最终得到了同样的错误。有什么建议吗?我在这里看到的答案都指向使用派生列任务,但我提到的其他几个问题也遇到了同样的问题。
编辑:这是数据样本。所有错误中特别提到的字段是 CRTFCTN_DT。数据集中有 470 个字段,但这确实显示了前两个日期字段。
解决方案:在Connection Manager中,我将yyyymmdd字段更改为 DT_STR(10)(日期为 8 个字符,添加的破折号为 2 个字符),并重建了我的Data Flow Task。这解决了问题。如果您不重新构建任务,派生列任务将不会选择新的数据类型。重新创建任务后,我也不再需要在应用子字符串之前将日期转换为字符串。
sql-server - SSIS - 派生列 - 子字符串/字符索引 - 语句时的情况
我有这个 SQL 代码:
我正在创建我的 SSIS 工作流,以便使用 SSIS 构建我的 ETL。为了创建上面的转换,我使用了派生列对象。对于第一个语句,我尝试这样做:
但它给了我错误......
我怎样才能进行这两个转换?
谢谢!