Не могу использовать вставку с подзапросом
Эта проблема действительно странная, и я думаю, что она связана с самим Access.
Я пытаюсь вставить этот путь (действительно упрощенная версия, но в любом случае ошибка та же):
INSERT INTO phones(a, b)
select * from ( select C, D from banks) AS BB;
Access возвращает ошибку, говоря, что:
Инструкция INSERT INTO состоит из неизвестного поля C
Затем я попробовал другой запрос, который выглядит так же:
INSERT INTO phones(a, b)
select BB.* from ( select C, D from banks) AS BB;
Ошибка: номер поля не совпадает.
Однако запрос без подзапроса работает потрясающе!
INSERT INTO phones(a, b)
select C, D from banks;
Так что здесь не так?
1 ответ
Решение
Как я теперь вижу, Access не может сопоставить поля самостоятельно, поэтому имена в подзапросе должны быть одинаковыми:
INSERT INTO phones(a, b)
select * from ( select C as a , D as b from banks) AS BB;
Потрачено больше 1 часа, чтобы решить.