У меня сложный (для меня!) Запрос, в основном захватывает данные из 2 таблиц затем группируя их togeher (Этот бит работает на 100%, так как запрос на выборку)MySQL Обновление строки из запроса
Но когда Теперь мне нужно обновить базу данных в другой таблице, это не сработает.
Я получил это:
UPDATE
exp_channel_data data,
(
SELECT
posts.cat_id,
posts.entry_id,
cats.cat_name,
cats.cat_id,
GROUP_CONCAT('{"',cats.cat_name, '"}:{"',cats.cat_name,'"}') as category_tag
FROM
exp_category_posts posts,
exp_categories cats
WHERE
cats.cat_id = posts.cat_id
GROUP BY
posts.entry_id
) category
SET
data.field_id_178 = category.category_tag
WHERE
data.entry_id = category.entry_id;
Но я получаю эту ошибку:
Duplicate column name 'cat_id'
Я думаю его потому, что я пытаюсь сделать связь между двумя таблицами, НО это не связывание.
Как я уже сказал, запрос SELECT работает сам по себе, но при вводе в UPDATE - он просто выбрасывает эту ошибку.
:(
Попробуйте установить псевдонимы для столбцов с тем же именем: SELECT post.cat_ id AS pcat_id и т. д. – Whirlwind