sql >> Base de Datos >  >> RDS >> Mysql

Cómo optimizar una consulta enorme con subconsultas repetidas

Usar variables de MySQL:

SELECT
    @x := ColumnName,
    @y := ColumnName2 + @z,
    @z := (SELECT * FROM SubTable WHERE x = @x),
    (SELECT * FROM Table2 WHERE X = @z),
    (SELECT * FROM Table3 WHERE X = @z)
FROM Table
WHERE
    v = @v
  • Puede asignar valores de subselección y columna a variables SQL
  • Puede hacer referencia a estas variables en cualquier lugar de la declaración
  • Las variables contienen su valor de las filas anteriores (si están configuradas)
  • Puede reutilizar subselecciones y otros valores de esta manera