У меня есть две таблицы: chapter
и updates
MySQL UPDATE запросов с исключениями
У меня есть запрос UPDATE, чтобы установить идентификаторы участников из updates
таблицы в chapter
таблице. Проблема, которую я пытаюсь найти в синтаксическом решении, заключается в том, что мне нужно использовать один запрос, но НЕ обновлять (пропускать) значение, если значение обновления равно '0'
. Когда обновление выполняется (для ожидания обработки UPDATE), не все идентификаторы изменены, а те, которые не сохранены, сохраняются в моей таблице updates
как '0'
, а действительные изменения - семизначное целое. Проблема возникает при применении UPDATE, любые существующие идентификаторы перезаписываются '0'
, когда это поле должно иметь существующее существующее значение. Образец моего текущего запроса:
UPDATE chapter
SET chapter.election_date = updates.election_date,
chapter.president = updates.president_id,
chapter.vice_president = updates.vice_president_id,
chapter.secretary = updates.secretary_id,
WHERE
updates.chapter_id = chapter.id
AND updates.installation_date < CURRENT_DATE()
Основе этого примера, я пытаюсь найти способ, чтобы chapter.president
не будет обновляться, если updates.president_id = '0'
Если это выполнимо, любая помощь или руководство будет быть оцененным.
Как соотносятся таблицы 'updates' и' chapter'? Есть ли что-нибудь, чтобы присоединиться к ним на – dan08
Таблицы объединены chapter.id = updates.chapter_id –