У меня проблема с MySQL, которую я не могу решить. У меня есть mysql для управления установкой виртуального пользователя dovecot, которая использует две таблицы (одну для псевдонимов, другую для доменов).mysql insert со значением, с выбранными данными из другой таблицы
Табличные псевдонимы имеют следующие поля: domain_id (INT), source (VARCHAR), destination (VARCHAR), тогда как домены таблиц имеют только два поля: id (INT AUTO INC) и имя (VARCHAR).
Хотя я могу выбрать псевдонимы, которые принадлежат к данному домену путем выпуска:
SELECT valias.* FROM aliases AS valias
JOIN domains AS vdomains ON valias.domain_id=vdomains.id
WHERE vdomains.name = "domain_name";
Я не могу работать, чтобы вставить новый псевдоним, задав имя домена. что-то вроде этого:
INSERT INTO valias(domain_id, source, destination)
VALUES (id, 'canto', 'george')
SELECT id FROM aliases
JOIN domains AS vdomains ON aliases.domain_id=vdomains.id
WHERE vdomains.name = "domain_name";
Кто-нибудь знает, как решить эту проблему?
Если бы я правильно понял, тогда вы использовали INSERT INTO valias, где «valias» не является таблицей. Поэтому я думаю, вы не можете использовать это. Инструкция Insert должна иметь либо имя_таблицы, либо имя вида. – user2510115