Страницы

Поиск по вопросам

воскресенье, 16 февраля 2020 г.

Глобальное обновление таблицы данными другой таблицы

#mysql


Сразу скажу, что смотрел это решение и у меня оно не работает. Ругается на FROM.
Есть две таблицы.

CREATE TABLE `test`.`ab` (
`id` INT NOT NULL,
`ids` INT NULL,
PRIMARY KEY (`id`))
ENGINE = MyISAM;

CREATE TABLE `test`.`cd` (
`id` INT NOT NULL,
`ids` INT NULL,
PRIMARY KEY (`id`))
ENGINE = MyISAM;


Есть данные:

INSERT INTO ab (id) VALUES (1);
INSERT INTO ab (id) VALUES (2);
INSERT INTO ab (id) VALUES (7);
INSERT INTO ab (id) VALUES (8);

INSERT INTO cd (id, ids) VALUES (1, 111);
INSERT INTO cd (id, ids) VALUES (5, 555);
INSERT INTO cd (id, ids) VALUES (3, 333);
INSERT INTO cd (id, ids) VALUES (8, 888);


Теперь мне надо в первой таблице AB значение поля ids заполнить значениеми поля ids,
но с таблицы CD по ключевому ID. Уверен, что в MySQL есть решение в одну команду. Я
сам пишу на FoxPro. Там нужно командой SET RELATION TO связать таблицы. Подскажите
как это делается на MySQL.
    


Ответы

Ответ 1



update ab join cd on ab.id=cd.id set ab.ids=cd.ids

Комментариев нет:

Отправить комментарий