Разница между INNER и LEFT JOIN при обновлении данных в MySQL заключается в том, как они обрабатывают строки, не имеющие совпадений в соседней таблице. 1
INNER JOIN выбирает строки, удовлетворяющие условию объединения из обеих таблиц. 3 Каждая строка из первой (левой) таблицы сопоставляется с каждой строкой из второй (правой) таблицы, после чего происходит проверка условия. 1 Если условия нет или оно истинно, то строки попадают в результирующую таблицу. 1
LEFT JOIN возвращает все строки из левой таблицы и соответствующие строки из правой. 3 Если совпадения не обнаружены, возвращается NULL. 3 Сначала происходит формирование таблицы соединением INNER JOIN, затем в результат добавляются записи левой таблицы, не вошедшие в результат после INNER JOIN. 1 Для них соответствующие записи из правой таблицы заполняются значениями NULL. 1
Таким образом, при использовании UPDATE LEFT JOIN обновляется строка в таблице, когда у неё нет соответствующей строки в другой таблице. 2