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

¿Cómo puedo almacenar el resultado de una consulta en una tabla temporal y usar la tabla en una nueva consulta?

Esto es muy sencillo:

CREATE TEMPORARY TABLE tempname  AS (    
    SELECT whatever, whatever
      FROM rawtable
      JOIN othertable ON this = that
)

La tabla temporal desaparecerá cuando se cierre la conexión. Una tabla temporal contiene los datos que se capturaron en el momento de su creación.

También puede crear una vista, así.

CREATE VIEW viewname AS (    
    SELECT whatever, whatever
      FROM rawtable
      JOIN othertable ON this = that
)

Las vistas son objetos permanentes (no desaparecen cuando se cierra la conexión), pero recuperan datos de las tablas subyacentes en el momento en que las invoca.