РЕДАКТИРОВАТЬ 2: Оригинальный пост вызвал больше путаницы в решении проблем, поэтому я решил объяснить всю ситуацию в деталях.
Позвольте мне прояснить всю ситуацию ...
Я работаю над электронной коммерцией CMS (Prestashop). Владельцы сайтов по ошибке добавили всех производителей (идентификатор, имя, описание) в качестве категорий.
Я хочу создать правильную структуру для таблицы производителей, чтобы мы могли исправить эту проблему.
Позвольте мне объяснить всю структурутаблицы ps_manufacturer_lang
, которую необходимо заполнить (в ней нет значения).
Таблица ps_manufacturer_lang
имеет четыре columns
имени:
1. id_manufacturer
2. id_lang
3. description
4. short_description
Вот значения, которые необходимо вставить:
1. id_manufacturer
следует заполнить значениями из таблицы ps_manufacturer
.
2. id_lang
должно быть 1
.
3. description
должен быть заполнен значениями из таблицы ps_category_lang
с определенным предложением WHERE
.
4. short_description
должно быть NULL
.
Перейдем к запросам:
1. Этот INSERT INTO
запрос заполняет id_manufacturer
и id_lang
правильно:
INSERT INTO ps_manufacturer_lang (id_manufacturer, id_lang)
SELECT
id_manufacturer,
1
FROM ps_manufacturer
2. Этот INSERT INTO
запрос заполняет описание правильно:
INSERT INTO ps_manufacturer_lang (description)
SELECT
description
FROM ps_category_lang
WHERE
id_lang='1'
AND id_category IN (
SELECT id_category FROM ps_category WHERE id_parent='241'
)
Теперь вопрос в том, как это сделать? Невозможно использовать два запроса ONE INSERT INTO
с TWO SELECT FROM
синтаксисами.