【发布时间】:2019-08-06 20:15:03
【问题描述】:
我遇到了来自系统的订单数据的一些问题 - 不同的列类型错误。
我正在使用 SSIS 将数据提取到表中
但是我遇到了一些看起来像这样的记录
CUSTOMERID DATE ITEMID ITEM
1 10/04/2017 A1456 TABLE
2 20/05/2017 A3432 CHAIR
3 16/06/2017 A3432 CHAIR
4 18/06/2017 Null A3432,CHAIR
5 23/06/2017 A1456 TABLE
是否有一些 SQL 代码或我可以在 SSIS 中使用的过程来帮助纠正 ID 4 的问题,将 ITEMID 放入正确的行并按如下方式分隔项目?
CUSTOMERID DATE ITEMID ITEM
1 10/04/2017 A1456 TABLE
2 20/05/2017 A3432 CHAIR
3 16/06/2017 A3432 CHAIR
4 18/06/2017 A3432 CHAIR
5 23/06/2017 A1456 TABLE
【问题讨论】:
-
您需要首先找到
,符号并将其前面的所有内容放在第一列中,并使用substring等sql 函数将其放在第二部分中。根据您的 DBMS 系统(MySQL、PostgreSQL、Oracle、SQL Server),可能会有不同的功能来执行此操作。 -
请提供有关数据源的更多详细信息,是来自 CSV 文件、excel 文件还是其他数据库系统?
标签: sql sql-server ssis etl