Si la mejor forma fuese un JSON, entonces nadie usaría tablas relacionales...
El tema es para una explicación larga y detallada, pero en esencia se puede resumir así: Un campo JSON es para nuestra óptica un
campo multivaluado, cosa prohibida en las bases de datos relacionales.
Además,
no puede ser usado en consultas, porque no contiene datos desde el punto de vista ni del SQL, ni de las BBD. Sólo tiene una larga y
no analizable cadena de texto.
En otras palabras: Eso no es un dato para nosotros. Es una "cosa" que alguien guardó allí, equivocadamente.
Es simple "trash data".