具有重命名和避免重复的迭代

时间:2012-07-16 07:05:27

标签: sql sql-server sql-server-ce

想要在具有重命名活动的新表中插入表的所有行。 我们还有一些例外情况,我们不应该移动它们。

Renaming Act:将字符'_'更改为''

Exceptions:如果我们重命名它们的项目将在新表格中重复。

所以那里的所有项目都是我们上一张桌子的唯一和重命名版本。

  • 这里我们没有任何整数ID,
  • 数据库是SQL Server CE

  • 我们的表:产品,tblNew
  • 每个都有相同的列:“Product”,“col1”,“col2”

想要将记录移至tblNew,我们不希望重复的关键列是“产品”

1 个答案:

答案 0 :(得分:1)

INSERT INTO Table1(Column1)
    SELECT  REPLACE(OriginalColumn, '_', '')
      FROM  Table2 t2
            LEFT OUTER JOIN Table1 t1 ON t1.Column1 = REPLACE(OriginalColumn, '_', '')
     WHERE  t1.Column1 IS NULL  -- Not a duplicate Record