No he conseguido que funcione bien pero te agradezco muchísimo tu tiempo. He lanzado la siguiente consulta:
Código MySQL:
Ver originalUPDATE bfb9s_virtuemart_product_medias dest
, (SELECT l.virtuemart_product_id
, l.virtuemart_media_id
, COUNT( * ) AS ordering
FROM `bfb9s_virtuemart_product_medias` AS l
LEFT OUTER JOIN `bfb9s_virtuemart_product_medias` AS r
ON l.virtuemart_product_id
= r.virtuemart_product_id
AND l.virtuemart_media_id
>= r.virtuemart_media_id
GROUP BY l.virtuemart_product_id
, l.virtuemart_media_id
) src
SET dest.ordering
= src.ordering
Pero muestra valor 1 para todas las filas de la columna ordering y creo, por lo poco que sé, que ahí falta un left join para que funcione correctamente, ¿sabes como debería utilizarlo? O si te resulta muy complicado para MySQL pido ayuda en ese foro.
Muchas gracias de verdad.