表结构不同时使用Merge在链接服务器和本地服务器之间进行数据同步(SQL)

时间:2017-08-29 21:06:46

标签: sql-server

我的localDb服务器下有一个链接服务器测试Db (SQL 2014)。

链接服务器有一个表:

$post->user

在我的测试Db里面我有一张桌子:

Valid State(StateId(char Pk), Name, Desc, CreatedBy, UpdatedBy)

我需要在这些链接的服务器和我的表之间同步数据。处理我可以实现SQL-Merge的情况的方法是什么。 我从http://www.sqlservercentral.com/articles/T-SQL/66066/

得到了一些想法

如果表结构是SAME,我到达查询的作用点。但结构不同的情况则不同。任何建议将不胜感激:) 谢谢 !

2 个答案:

答案 0 :(得分:0)

假设系统之间的ID实际匹配,这将做你想要的:

A = LOAD 'input1' USING PigStorage(',') AS (id:int, name:chararray);
B = LOAD 'input2' USING PigStorage(',') AS (id:int, dept:int, dname:chararray);
C = FOREACH A GENERATE id, name;
D = FOREACH B GENERATE id, dname;
E = JOIN C by id, D by id;
DUMP E;

即使在所有这些提示之后,你也“解释了你想要对剩余领域做些什么。所以我把它们排除了

答案 1 :(得分:0)

我建议先更新然后再插入,这样您就不会在更新插入上浪费时间。