Обновление значений SQL из таблицы - PullRequest
0 голосов
/ 28 января 2019

Я серьезно борюсь с некоторыми легкими вещами.

В настоящее время у меня есть 2 таблицы (tmp_jmo и персоны)

table tmp_jmo
----------
ID     ADRESS     PERSON_ID
115    Street 1   (null)
120    Street 2   (null)
121    Street 3   (null)

Table persons
ID    NAME      PERSON_ID
----------
115    John       14
120    Ellen      27
121    Mark       114

Теперь я хочу обновитьPeson_id из tmp_jmo со значениями из person_id (таблица персон)

В этом случае я получаю сообщение об ошибке, что существует много значений

Update tmp_jmo t SET person_id = persons.person_id where tmp_jmo.id = persons.id;

I 'Мы также пытались получить временные данные, но не смогли.

Извините, что прерываю вас такими вопросами, но это портит мой день!

Большое спасибо!

1 Ответ

0 голосов
/ 28 января 2019

В стандартном SQL вы можете сделать:

update tmp_jmo t 
    set person_id = (select p.person_id from persons p where tmp_jmo.id = p.id);

Многие базы данных также поддерживают join или from в update с, но это синтаксис, специфичный для базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...