tenho uma base de dados mysql com 35MB e em torno de 11 tabelas uma delas em específico tb_1 com 600.000 registros e utilizo os seguintes comandos para fazer uma atualização na tabela
mysql_query("update tb_1 set devolvido='S', devolvido_em='$data_atual' where cod IN ($baixa) and cod_2='$cod_3' order by id desc") or die ("Erro 0.");
mysql_query("update tb_tb_2 set locado='N' where codigo IN ($baixa) order by id desc") or die ("Erro 1.");
porém isso demos muito, cerca de uns 15s e quando uso limit 0,500 logo após o order by is desc para limitar os 500 últimos registros, o comando não é executado, o mysql não aceita, da erro.
tem alguma maneira de limitar a leitura somente dos 500 últimos registros para o comando não ter que fazer a leitura dos 600.000?
Pergunta
lkm
tenho uma base de dados mysql com 35MB e em torno de 11 tabelas uma delas em específico tb_1 com 600.000 registros e utilizo os seguintes comandos para fazer uma atualização na tabela
porém isso demos muito, cerca de uns 15s e quando uso limit 0,500 logo após o order by is desc para limitar os 500 últimos registros, o comando não é executado, o mysql não aceita, da erro.
tem alguma maneira de limitar a leitura somente dos 500 últimos registros para o comando não ter que fazer a leitura dos 600.000?
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados