С json данными в mysql можно очень эффективно работать. На таблицах милионниках выборки в данном случае наверняка будут не эффективными и не быстрыми. Но это милионники. А вот например, есть некая не сильно большая таблица пользователей, в неё пишутся в текстовом виде массивы групп
JSON_CONTAINS(groups, 1)
проверяет наличие id 1 группы в массиве и отдает единичку если она есть. Очень круто и удобно, чем делать выборку всех записей и чекать каждую в цикле in_array(1, json_decode($row->groups, true))
JSON_EXTRACT может извлекать определенные элементы массива по порядку/по имени и много чего ещё