INSERT INTO some_table
(id, json_column)
VALUES
(1, '{"x": 1000}')
ON DUPLICATE KEY UPDATE
json_column = JSON_SET(json_column, "$.x", 1000)
С защитой имеющейся записи:
...
json_column = IF(
json_column->"$.x" IS NULL,
JSON_SET(json_column, "$.x", 1000),
json_column
)
Аналогичного эффекта - защиты существующей записи - можно добиться с помощью JSON_INSERT(). Противоположного эффекта - только замены существующей записи без добавления новой - можно добиться с помощью JSON_REPLACE().
Подробнее: о путях в JSON, о JSON_SET().