Поиск значения при вставке в MYSQL - PullRequest
0 голосов
/ 11 мая 2011

При вставке данных в таблицу мне нужно иметь возможность заполнять таблицу данными из другой таблицы на основе записи в новой записи.

Например, у меня есть таблица с именем широта, которая не заполняется при создании новой записи.

Информация о широте хранится в таблице с именем area, в которой есть столбец areaid и один столбец latitude.

Мне нужно обновить поле широты в таблице площадей, указав правильную широту на основе значения areaid, вставленного в новую запись.

Извините, если это сбивает с толку, любые вопросы, пожалуйста, свяжитесь с нами.

Спасибо

1 Ответ

1 голос
/ 11 мая 2011

Я предполагаю, что areaid - это уникальный или первичный ключ в таблице area.

Вы можете использовать REPLACE INTO или INSERT ... ON DUPLICATE KEY UPDATE.Если вы также хотите сохранить широту в таблице latitude, вы можете использовать триггер, чтобы обновлять таблицу area при вставке в таблицу latitude.

CREATE TRIGGER example BEFORE INSERT ON latitude
  FOR EACH ROW BEGIN
    REPLACE INTO area (areaid, latitude) VALUES (NEW.areaid, NEW.latitude);
  END;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...