このように結合全体で更新を行う必要があります
UPDATE
t1 INNER JOIN t2 ON t1.variant_id = t2.variant_id
SET t1.product_code = t2.value
WHERE t2.key_id = 10
AND t2.value IS NOT NULL
その場合、内部結合は両方のテーブルにvariant_idが存在する行のみを選択するため、nullについて心配する必要はありません。
このように結合全体で更新を行う必要があります
UPDATE
t1 INNER JOIN t2 ON t1.variant_id = t2.variant_id
SET t1.product_code = t2.value
WHERE t2.key_id = 10
AND t2.value IS NOT NULL
その場合、内部結合は両方のテーブルにvariant_idが存在する行のみを選択するため、nullについて心配する必要はありません。