marcioe Posted July 6, 2016 Report Share Posted July 6, 2016 Amigos tenho uma tabela CABECALHO_PEDIDO com aproximadamente 188.000 registros, nela tenhos os campos com o "CLIVENDA" o problema é quando preciso pesquisar por esse campo select * from tvenda WHERE CLIVENDA LIKE '%JOAO%' ORDER BY CLIVENDA ASC LIMIT 1000 Esse campo CLIVENDA está indexado, mas ela tem 58 campos, mas nem todos são preenchidos, mas no browse de pesquisa exibo apenas uns 10 campos. quando jogo esse comando no banco ele leva um tempão, não gostaria de jogar em array a principio, pois teria que mudar varias rotinas no sistema. Quote Link to comment Share on other sites More sharing options...
marcioe Posted July 6, 2016 Author Report Share Posted July 6, 2016 fazendo testes e com a dica do empresoft, se eu retirar o ORDER BY CLIVENDA ASC, ele lista rapidao select * from tvenda WHERE CLIVENDA LIKE '%JOAO%' LIMIT 1000 porem preciso que ele venha ordenado. Quote Link to comment Share on other sites More sharing options...
evandro Posted July 6, 2016 Report Share Posted July 6, 2016 Olá, Crie uma tabela temporária sem o order by, e faça o select na temporária com o order by. Nunca use "select * ". Isto gera mais demora. Coloque apenas os campos que serão utilizados. Quote Link to comment Share on other sites More sharing options...
marcioe Posted July 6, 2016 Author Report Share Posted July 6, 2016 o amigo EMPRESOFT, me passou essa dica e fica ai para os amigos SELECT * FROM (SELECT * FROM tvenda WHERE CLIVENDA LIKE '%JOAO%' LIMIT 1000) AS t1 ORDER BY codvenda desc rapidão Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.