Вставить в несколько вариантов выбора с ОШИБКОЙ 1242: Подзапрос возвращает более 1 строки
У меня есть таблица foo1 со столбцами UserID,TimeStamp; foo2 со столбцами userID, уровень и таблица foo3 со столбцами userID, отметка времени.
Я хочу вставить в foo1 все строки из foo3, где UserID существует в таблице foo2.
Я получаю ОШИБКУ 1242: Подзапрос возвращает более 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
1 ответ
Решение
Если вы хотите ВСТАВИТЬ в foo1 все строки из foo3, где UserID существует в таблице foo2, то вам нужно пройти через это:
ВСТАВИТЬ в foo1 (UserID,TimeStamp) ВЫБЕРИТЕ foo3.UserID,foo3.TimeStamp от foo3 внутреннее соединение foo2 ON foo3.UserID=foo2.UserID