query functions example any_value and mysql group-by cube rollup

functions - mysql group by condition



¿Hay alguna forma de simular GROUP BY WITH CUBE en MySql? (1)

Respuesta corta: No.

Respuesta larga: puede instalar un almacén de datos de código abierto con el soporte GROUP BY WITH CUBE que está utilizando Mysql como motor de almacenamiento, como Pentaho.

MySql admite GROUP BY WITH ROLLUP que devolverá los agregados de la última x de las n columnas del grupo pero no admite GROUP BY WITH CUBE para tomar todas las combinaciones de las n columnas y tomar agregados.

Puedo simular esto haciendo uniones de GROUP BY WITH ROLLUP consultas, pero MySql está materializando mi subconsulta varias veces. Estoy usando un grupo en una subconsulta grande, por lo que no es óptimo. ¿Hay alguna manera de resolver esto sin tablas temporales?