gpt4 book ai didi

sql-server - 根据字段值在ssis中拆分行

转载 作者:行者123 更新时间:2023-12-03 17:38:28 24 4
gpt4 key购买 nike

在 SSIS 中 - 如何将行中的数据拆分为 2 行
例如 :

从 :

ID  Data
1 On/Off
2 On/Off

到 :
ID  Data
1 On
1 Off
2 On
2 Off

最佳答案

解决方案概述

您必须使用脚本组件来实现这一点。使用非同步输出缓冲区根据您自己的逻辑从一行生成多行。

解决方案详情

  • 添加数据流任务
  • DataFlow Task添加 Flat File Source , Script Component , 和目的地
  • 在脚本组件中,选择 ID , Data列作为输入
  • 转至 Input and Outputs页面,单击输出并更改 Synchronous Input属性(property)到none
  • 添加两个输出列 IDDataOutput
  • 将脚本语言更改为 Visual Basic
  • 在脚本编辑器中编写以下代码
    Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)

    Dim strValues() as String = Row.Data.Split(CChar("/")

    For each str as String in strValues

    Output0Buffer.AddRow()
    Output0Buffer.ID = Row.ID
    Output0Buffer.Data = str

    Next


    End Sub

  • 附加信息

    有关更多详细信息,请访问以下链接:
  • SSIS - Script Component, Split single row to multiple rows
  • Output multiple rows from script component per single row input


  • 使用 T-SQL

    根据您的评论,这是一个包含如何使用 SQL 命令完成此操作的示例的链接
  • Turning a Comma Separated string into individual rows
  • 关于sql-server - 根据字段值在ssis中拆分行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48206344/

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