sql - Mysql subquery in a view very slow -


i'm trying last result table using data_coleta (date) , servico_id base. query working slow. how can optimize?

select t1.* amostra_ensaio_full t1 t1.cliente_id = 6 , t1.tipo_id <> 1 , t1.data_coleta = (select max(s1.data_coleta) amostra_ensaio_full s1 t1.cliente_id = s1.cliente_id , s1.tipo_id <> 1 , s1.tipo_id = t1.tipo_id) , t1.servico_id = (select max(s2.servico_id) amostra_ensaio_full s2 t1.cliente_id = s2.cliente_id , s2.tipo_id <> 1 , s2.tipo_id = t1.tipo_id) group t1.cliente_id , t1.tipo_id 

you can speed query using indexes.

the query is:

select t1.* amostra_ensaio_full t1 t1.cliente_id = 6 , t1.tipo_id <> 1 ,       t1.data_coleta = (select max(s1.data_coleta)                         amostra_ensaio_full s1                         t1.cliente_id = s1.cliente_id ,                                s1.tipo_id <> 1 ,                               s1.tipo_id = t1.tipo_id                        ) ,      t1.servico_id = (select max(s2.servico_id)                       amostra_ensaio_full s2                       t1.cliente_id = s2.cliente_id ,                             s2.tipo_id <> 1 ,                             s2.tipo_id = t1.tipo_id                      ) group t1.cliente_id , t1.tipo_id; 

you want following index query: amostra_ensaio_full(cliente_id, tipo_id, servico_id).

the condition tipo_id <> 1 unnecessary in subquery, causes no harm.


Comments

Popular posts from this blog

python - No exponential form of the z-axis in matplotlib-3D-plots -

php - Best Light server (Linux + Web server + Database) for Raspberry Pi -

c# - "Newtonsoft.Json.JsonSerializationException unable to find constructor to use for types" error when deserializing class -