SSIS -为一批记录输入相同的数字



有一个Daily Load表,其中包含需要传输到历史表的每日新鲜数据。

历史表有一个额外的列'CSV_ID',用于标识每日批次的记录。例如,每日表中的10条记录今天被转移到历史表中。所有这10条记录的CSV_ID都为1。第二天的批处理将以2作为其CSV_ID。

我是否使用表达式CSV_ID == " "派生列?1: CSV_ID + 1

谢谢

假设问题是:"我有一个表,其中CSV_ID的新记录是空的,我想将其设置为下一个批号....?"

有几个选项可以这样做:
1. 使用您想到的方法,但不是CSV_ID + 1,您最好先获得MAX值,然后仅对空值应用MAX+1
2. 加载数据as is,然后将MAX+1应用于空数据,如下所示:

UPDATE MyStagingTable 
SET CSV_ID = (SELECT MAX(CSV_ID)+1 FROM MyStagingTable)
WHERE CSV_ID = '';

最新更新