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

Я обновляю значение в первый раз. У меня есть две таблицы. Одна таблица имеет старые значения, это главная таблица, и она должна быть обновлена. Во второй таблице у меня есть новые значения. В обеих таблицах у меня один и тот же User_ID.

имя базы данных 'intranet'

Имя первой таблицы 'wp_bp_xprofile_data'

id     field_id   user_id   value           last_updated
59430   13        4442      598902299       22-Mar-19 20:19:54
59443   13        4443      599847428       22-Mar-19 20:19:54
59456   13        4444      598644555       22-Mar-19 20:19:54

Имя второй таблицы 'idgeorge'

user_id z9
4444    598644555
4443    599847428
4442    598902299

это пример для трех пользователей, есть еще тысячи ...

Я искал несколько примеров и записывал код, но он не работает. Вот мой код.

UPDATE wp_bp_xprofile_data
SET wp_bp_xprofile_data.value = idgeorge.z9 
WHERE idgeorge.user_id = wp_bp_xprofile_data.user_id 
and 
wp_bp_xprofile_data.field_id=13 
FROM intranet.idgeorge

Выдает ошибку

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'FROM 'intranet.idgeorge'' at line 11

, но я не могу понять, чего не хватает или что не так.

1 Ответ

0 голосов
/ 24 октября 2019

Вы, похоже, ищете update / join. В MySQL это выглядит следующим образом:

UPDATE wp_bp_xprofile_data pd join
       intranet.idgeorge i
       USING (user_id)
    SET pd.value = i.z9 
    WHERE pd.field_id = 13 ;

MySQL не поддерживает предложение FROM в UPDATE. Все базы данных, которые следуют обычному порядку пунктов, где WHERE должен следовать за FROM.

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