• Skip to primary navigation
  • Skip to main content

Jorge Arrambide

Especialista en programación web en java

  • ¿Quién soy?
  • Contactar
  • Servicios
    • Programación para empresas
    • Asesorías de programación universidad
  • Articulos
    • Java
    • Salesforce
    • WordPress

Ordenar Json en MySQL 8

En en artículo anterior, te mostré como crear un json en MySQL. Ahora te muestro como puedes ordenar la información de un arreglo json.

Requerimientos

  • MySQL 8.0.2
  • Workbench

Problema: ¿Cómo ordenar los elementos de un arreglo json (json rray)?

Cuando usamos la función JSON_ARRAYAGG, Mysql 8.0.2 no puede ordenar los elementos de dicho arreglo.

--      ESTO NO FUNCIONA =(

SELECT 
	JSON_ARRAYAGG(JSON_OBJECT('id', r.id,'nombre', r.nombre))
FROM
	tutoriales.referencias r
 WHERE r.idUsuario = 1
 ORDER BY r.nombre asc -- Nomas no jala =/
 ;

Solución

Para ordenar un arreglo json en MySQL usaremos la función ROW_NUMBER, como lo explico en el siguiente vídeo:

https://youtu.be/oXa6wgCpqhM

Query

Usaremos las funciones JSON_OBJECT Y JSON_ARRAYAGG.

-- Resultado final =)

SELECT
  JSON_ARRAYAGG(jarray.dato)
FROM (
    -- Consulta del paso 2     
	select JSON_OBJECT('id', r.id,'nombre', r.nombre) AS dato,
		ROW_NUMBER()  OVER ( order by r.nombre asc)
	from tutoriales.referencias r

) jarray
WHERE 1=1; 

Derechos de autor © 2025

  • Política de privacidad
  • Política de cookies
Este sitio web utiliza cookies propias para poder optimizar su visita a la página y cookies de terceros para recoger información sobre sus visitas y el uso de nuestra web. Vd. puede permitir su uso, rechazarlo o cambiar la configuración cuando lo desee. En caso de seguir navegando, se considerará que se acepta el uso. Más información: Política de Cookies