插入带有多个选择的错误 1242:子查询 returns 多于 1 行
Insert into w/ multiple selects giving ERROR 1242: Subquery returns more than 1 row
我有 table foo1 列 UserID,TimeStamp; foo2 包含列 userID、Level & table foo3 包含列 userID、Timestamp.
我想将 foo3 中用户 ID 存在于 table foo2 中的所有行插入到 foo1 中。
我收到错误 1242:子查询 returns 多于 1 行,其中
INSERT into foo1 (UserID,TimeStamp)
SELECT
(SELECT UserID from foo2 as UserID),
(SELECT foo3.TimeStamp
from foo3
inner join foo2
ON foo3.UserID=foo2.UserID) as TimeStamp
如果您想将 foo3 中用户 ID 存在于 table foo2 中的所有行插入到 foo1 中,那么您应该执行以下操作:
INSERT into foo1 (UserID,TimeStamp)
SELECT foo3.UserID,foo3.TimeStamp
from foo3
inner join foo2
ON foo3.UserID=foo2.UserID
我有 table foo1 列 UserID,TimeStamp; foo2 包含列 userID、Level & table foo3 包含列 userID、Timestamp.
我想将 foo3 中用户 ID 存在于 table foo2 中的所有行插入到 foo1 中。
我收到错误 1242:子查询 returns 多于 1 行,其中
INSERT into foo1 (UserID,TimeStamp)
SELECT
(SELECT UserID from foo2 as UserID),
(SELECT foo3.TimeStamp
from foo3
inner join foo2
ON foo3.UserID=foo2.UserID) as TimeStamp
如果您想将 foo3 中用户 ID 存在于 table foo2 中的所有行插入到 foo1 中,那么您应该执行以下操作:
INSERT into foo1 (UserID,TimeStamp) SELECT foo3.UserID,foo3.TimeStamp from foo3 inner join foo2 ON foo3.UserID=foo2.UserID