在insert运算符中使用子查询时出错

时间:2012-09-02 20:01:44

标签: sql-server database insertion

我的桌子有以下结构:

FirstName|MiddleName|PatientID

我希望在其他表中存储所有不同的FirstNames。我创建了名为TBL的表,我想在其中插入所有不同的FirstName行。我们假设第一个表名是uis TBL1。我尝试了以下方法:

INSERT Into TBL(FirstName) VALUES (SELECT DISTINCT FirstName FROM TBL1)

但我有错误:

  

子查询返回的值超过1。当子查询跟随=时,不允许这样做! =,<,< =,>,> =或当子查询用作表达式时。

我在这里缺少什么?我在谈论Microsoft Sql Server 2008 R2。

1 个答案:

答案 0 :(得分:2)

这应该可以正常工作:

INSERT Into TBL(FirstName) 
SELECT DISTINCT FirstName FROM TBL1

VALUES用于行中的值。