将数据复制到多张表中的SQL表时重复

我必须从多个Excel表格复制数据到单个SQL表格。

Excelinput:Sheet1的列:fname a,b。 lname c,d。 (2行)Sheet2的列:城市波士顿,奥斯汀,州马,tx。 (2行)

我的输出(tMSSqlOutpout)有4行而不是2. ac boston ma,ac austin tx,bd boston ma,bd austin tx。

期望的输出:ac boston ma,bd austin tx。 (仅2行)

我如何pipe理这个?

在这里输入图像说明在这里输入图像说明

根据评论,你没有一个自然的关键来join这两个数据集。 相反,您可以为每个数据集生成一个序列,这两个数据集的增加量相等,并且相当于每个数据集上的行数。

首先,这应该设置警报铃声来响应数据的状态,以及如何确保一个数据集中的第n行与另一个数据集中的第n行相对应。 如果没有添加适当的密钥,就会导致某些事情被严重规范化,假设由此产生的数据将是准确的,这可能是非常危险的。

如果您绝对必须这样做,那么您应该为每个数据集分配一个Numeric.sequence 。 你可以在jointMap之前的tMap中做到这一点:

将一个序列应用于数据集

注意Numeric.sequence"s1"参数。 如果你在其他地方重复使用,那么它将增加这个,而不是从1开始,所以通常你会想要为你的工作中的每个序列select一个唯一的名称(尽pipe有很多情况下增加一个先前定义的序列就是你所期望的)。

一旦你定义了一个具有相同起始数字(第二个参数)和相同增量数字(第三个参数)的唯一序列,那么你应该能够在这些实例上创build一个连接:

然后内部连接的序列