-1

我已经运行了 200 多次以下查询而没有出现错误:

INSERT INTO tempAbsenceClientUpload SELECT FirstName, LastName, UserID, UserIsActive, Email, TopClient, ClientGroup, isUpdated, MainProcessID, rownumber FROM temporaryAbsClientTable

这只是从一张桌子到另一张桌子。
但是,我现在收到以下错误消息:Subquery returns more than 1 row Error
谁能帮我理解为什么?

我真的不想要替代代码建议,只是它发生的原因。

谢谢。

4

3 回答 3

2

目标表上有一个“插入时”触发器。输入的数据被引用到表达式中的第三个表,该表达式期望一个结果(正在生成两个结果)。

因此,由于插入,“子例程”连接到目标表触发的触发器中的函数。

感谢大家的想法。

于 2013-08-12T12:54:28.103 回答
0

我认为你错过了一个 WHERE 子句,它给出了这个错误

于 2013-08-12T11:12:09.910 回答
0

第二个表中可能有重复项。在这种情况下,您可以这样做以消除它们:(首先创建表的副本)

ALTER IGNORE TABLE tableName ADD UNIQUE KEY keyName (`columnName`);

或检查重复:

select columnNameWithDuplicates, count(*) from tableName group by (columnNameWithDuplicates) having count(*)>1;
于 2013-08-12T11:02:08.263 回答