我正在导入一些包含文本字段的数据,该字段通常对每个子记录都有相同的信息。
e.g。
ID | PID | VALUE
1 | 1 | The quick brown fox
2 | 1 | The quick brown fox
3 | 1 | The quick brown fox
4 | 1 | The quick brown fox
但是,由于它是自由文本字段,因此有时内容会被修改:
2 | 1 | The quick*est* brown fox
3 | 1 | The quick brown fox *jumped over the log*
数据应该与父实体一起使用,因此我需要获得可以更新父记录的数据的合并版本,例如:
PID | Value
1 | The quickest brown fox jumped over the log
当然,我可以使用游标循环数据并创建合并结果,但是我要导入1000条记录,并希望将其作为导入批处理的一部分。
非常感谢任何帮助或见解!
答案 0 :(得分:0)
答案 1 :(得分:0)
听起来我想要做一些相当复杂的字符串差异/合并。 SQL Server不进行复杂的字符串操作,你几乎只限于连接,插入(东西)和一些其他基本功能。合并不是其中之一。
为您编写CLR过程可能是值得的,因为您可以访问更广泛的字符串合并工具like this one。但是,您可能对结果不满意。如果发生冲突,你会怎么做?例如
The quick brown fox jumped
The quick brown fox jumps
The quick brown fox danced
您需要手动确定此类事情的结果。最好只将与每个父ID相关联的所有字符串的不同列表导入到一个单独的表中,然后可以查找该表,或者在稍后的日期与一些人为监督合并。