生成字符串并检查它是否存在于数据库中然后使用它

时间:2012-03-14 05:35:18

标签: sql

我有两张桌子。

Table1
------
ID(identity column)
Name
FC

Table2 
------
ID
Name

我需要从Table2中插入Table1的值

表2将有1000条记录。

所以我使用的是insert sql server 2008语句。

我正在使用

insert into Table1(Name,FC)

 select Name, SELECT  value  as FC from Table2

FC中的值应手动生成。

我需要检查FC中生成的值在数据库中是否已经存在。如果它应该为FC创建一个新值并插入

我正在研究标量函数。

任何想法都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

在这种情况下,您可以在sql server中使用唯一标识符,即NEWID()....使用GUID的主要优点是它们在所有空间和时间都是唯一的。如果您将来自多个SQL Server的记录合并到一个表中,就像在数据仓库中一样,这会派上用场。 SQL Server复制也大量使用GUID,以便在多行SQL Server中分散行时跟踪行....

您可以通过以下方式在查询中实现guid .......

       INSERT INTO Table1(Name,FC)SELECT Name, NEWID() from Table2