Estou com a seguinte duvida é mais rapido (ganho em performace) fazer uma pesquisa usando a clausula JOIN ou fazer vairas pesquisas para unir as tableas?
por exemplo eu tenho uma tabela de pedido e outra de forncedor e verifiquei eu ganho em performace se eu fizer duas pesquisa 1st na tabela pedido para pegar os dados do pedido e cod do fornecedor e depois pesquisar o nome do fornecedor na tabela fornecedor do que dar um Left Join nas duas tabelas.
E isso mesmo ou sou eu que estou usando o JOIN errado?
segue os dois codigos:
Varias Querys
1)Tabela pedido
$query = sprintf("Select cod_pedi, cod_seq_pedi, cod_orga, num_forn, cod_stat, cod_lici, cod_fase, des_item, qte_pedi_prev, num_bord from pedido where $form_tipo like '%%%s%%'
order by cod_orga, cod_seq_pedi", addslashes($form_pesquisa));
2) tabela fornecedor
$query5 = "select nom_raza_soci from fornecedor where num_forn = '$cod_forn'";
Pergunta
alexcg
Estou com a seguinte duvida é mais rapido (ganho em performace) fazer uma pesquisa usando a clausula JOIN ou fazer vairas pesquisas para unir as tableas?
por exemplo eu tenho uma tabela de pedido e outra de forncedor e verifiquei eu ganho em performace se eu fizer duas pesquisa 1st na tabela pedido para pegar os dados do pedido e cod do fornecedor e depois pesquisar o nome do fornecedor na tabela fornecedor do que dar um Left Join nas duas tabelas.
E isso mesmo ou sou eu que estou usando o JOIN errado?
segue os dois codigos:
Varias Querys
1)Tabela pedido
$query = sprintf("Select cod_pedi, cod_seq_pedi, cod_orga, num_forn, cod_stat, cod_lici, cod_fase, des_item, qte_pedi_prev, num_bord from pedido where $form_tipo like '%%%s%%'
order by cod_orga, cod_seq_pedi", addslashes($form_pesquisa));
2) tabela fornecedor
$query5 = "select nom_raza_soci from fornecedor where num_forn = '$cod_forn'";
Usando JOIN
$query = sprintf("Select p.cod_pedi, p.cod_seq_pedi, p.des_item, p.num_bord,
fornecedor.nom_raza_soci, fase.des_fase, status.tip_stat, licitacao.tip_lici, orgao.sig_orga
from pedido as p
LEFT JOIN fornecedor ON fornecedor.num_forn = p.num_forn
where $form_tipo like '%%%s%%'
order by orgao.sig_orga, p.cod_seq_pedi", addslashes($form_pesquisa));
valeu
Alex
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.