rockrgo 138 Denunciar post Postado Agosto 14, 2014 Boa tarde pessoal, alguma ideia de como posso otimizar esta consulta? pois a mesma está estourando o limite do meu servidor. SELECT * FROM imagens WHERE id_galeria = '10' AND categoria = 'Fotos' AND MONTH(data_foto) IN (SELECT MAX(MONTH(data_foto)) FROM imagens WHERE id_galeria = '10' AND categoria = 'Fotos' AND YEAR(data_foto) IN (SELECT MAX(YEAR(data_foto)) FROM imagens WHERE id_galeria = '10' AND categoria = 'Fotos')) AND YEAR(data_foto) IN (SELECT MAX(YEAR(data_foto)) FROM imagens WHERE id_galeria = '10' AND categoria = 'Fotos') ORDER BY data_foto DESC Pessoal consegui melhorar aqui, agora ficou bem melhor e mais rápido. SELECT * FROM imagens WHERE id_galeria = '10' AND categoria = 'Fotos' AND EXTRACT(YEAR_MONTH FROM data_foto) IN (SELECT MAX(EXTRACT(YEAR_MONTH FROM data_foto)) FROM imagens WHERE id_galeria = '10' AND categoria = 'Fotos') ORDER BY data_foto DESC Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 14, 2014 SELECT * FROM IMAGENS WHERE ID_GALERIA = '10' AND categoria = 'Fotos' AND EXTRACT(YEAR_MONTH FROM DATA_FOTO) = (SELECT MAX(EXTRACT(YEAR_MONTH FROM DATA_FOTO)) FROM IMAGENS IMAGENS2 WHERE IMAGENS2.ID_GALERIA = IMAGENS.ID_GALERIA AND IMAGENS2.CATEGORIA = IMAGENS.CATEGORIA) ORDER BY data_foto DESC Seria bom ter um indice IMAGENS.ID_GALERIA Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Agosto 14, 2014 Opa essa eu não conhecia, não sabia que dava para utilizar dados da primeira consulta na segunda. Usando esses índices terei um bom ganho de desempenho ou a diferença é pouca? Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 14, 2014 Depende, a tabela tem muitos registros ? Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Agosto 14, 2014 Acho que por enquanto uns 2000 Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Agosto 15, 2014 Não creio que fará grande diferença mas estude a viabilidade do índice. Compartilhar este post Link para o post Compartilhar em outros sites
rockrgo 138 Denunciar post Postado Agosto 15, 2014 Ok, Obrigado pelas dicas Motta! Compartilhar este post Link para o post Compartilhar em outros sites