Hightfire Posted November 17, 2011 Report Share Posted November 17, 2011 Ola, estou com um problema em exibir uma consulta sql.Estive pesquisando no fórum porém não consegui resolver meu problema. Espero que me ajudem pois parece ser simples.abaixo esta o código:<?php$con = mysql_connect("xxx","yyy","zzz");if (!$con) { die('Could not connect: ' . mysql_error()); }// some codemysql_select_db("meu_banco_de_dados", $con);$result = mysql_query("SELECT tabela1.campo1 FROM tabela2 INNER JOIN tabela1ON tabela2.campo3 = tabela1.campo4echo "<table border='0'><tr><th>NomeDaTabelaResultado</th></tr>";while($linha = mysql_fetch_array($result) ) { echo "<tr>"; echo "<td>" . $linha['campo1'] . "</td>"; echo "</tr>"; }echo "</table>";mysql_close($con);?>So como comentário, eu executei a consulta no MySQL-Front e a consulta foi exibida normalmente. Porém quando tento executar no navegador através do seridor, a pagina fica carregando infinitamente e não exibe a consultaO que tem de errado???Obrigado. Quote Link to comment Share on other sites More sharing options...
0 Denis Courcy Posted November 17, 2011 Report Share Posted November 17, 2011 'Hightfire',Não estou vendo em seu select nada que justifique o uso de um join.Não há filtro de where que justifique. O que está acontecendo é que a consulta está varrendo toda a tabela.Tenho uma pergunta para o caso de realmente ser necessário o uso do join. O campo tabela1.campo4possui indice? se não possui, então para acada registro lido em tabela2 serão livos todos os registros de tabela1. A indexisatencia deste tipo de índice causa o "sentamento" da máquina por fazer table scan uma vez na tabela2 e diversas vezes na tabela1. Quote Link to comment Share on other sites More sharing options...
Question
Hightfire
Ola, estou com um problema em exibir uma consulta sql.
Estive pesquisando no fórum porém não consegui resolver meu problema. Espero que me ajudem pois parece ser simples.
abaixo esta o código:
<?php
$con = mysql_connect("xxx","yyy","zzz");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// some code
mysql_select_db("meu_banco_de_dados", $con);
$result = mysql_query("SELECT tabela1.campo1
FROM tabela2 INNER JOIN tabela1
ON tabela2.campo3 = tabela1.campo4
echo "<table border='0'>
<tr>
<th>NomeDaTabelaResultado</th>
</tr>";
while($linha = mysql_fetch_array($result) )
{
echo "<tr>";
echo "<td>" . $linha['campo1'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
So como comentário, eu executei a consulta no MySQL-Front e a consulta foi exibida normalmente.
Porém quando tento executar no navegador através do seridor, a pagina fica carregando infinitamente e não exibe a consulta
O que tem de errado???
Obrigado.
Link to comment
Share on other sites
1 answer to this question
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.