Как это выливается в сортировку не задумывался, но по факту результат сильно разный.
echo json_encode(['key1' => 87, 'key1' => 92, 'key3' => 12, 'key2' => 2, 'key1' => 12]);
SELECT JSON_OBJECT('key1', 87, 'key1', 92, 'key3', 12, 'key2', 2, 'key1', 12);