Estou com uma dúvida para otimizar minha consulta.
Possuo duas tabelas, uma com as empresas e a outra com suas cotações, na tabela de cotações os valores que são inseridos diariamente. Preciso fazer este relacionamento para exibir todas as empresas com suas últimas cotações.
Fiz assim:
SELECT
empresas.CODIGO,
(SELECT cotacoes.ULTIMO FROM bovespa.cotacoes cotacoes WHERE cotacoes.COD = empresas.CODIGO ORDER BY ID DESC LIMIT 0,1)
FROM
bovespa.empresas empresas,
bovespa.cotacoes cotacoes
WHERE
cotacoes.COD = empresas.CODIGO
GROUP BY empresas.CODIGO
ORDER BY cotacoes.VOLUME DESC
Deste modo até consegui, o problema é que quando coloco um Select dentro do outro, a consulta acaba ficando MUITO lenta, visto que eu preciso colocar ainda mais informações, tendo que fazer ainda mais selects dentro deste.
Existe alguma outra maneira para pegar este último valor da outra tabela?
Pergunta
Gabriel Koerich
Olá,
Estou com uma dúvida para otimizar minha consulta.
Possuo duas tabelas, uma com as empresas e a outra com suas cotações, na tabela de cotações os valores que são inseridos diariamente. Preciso fazer este relacionamento para exibir todas as empresas com suas últimas cotações.
Fiz assim:
Deste modo até consegui, o problema é que quando coloco um Select dentro do outro, a consulta acaba ficando MUITO lenta, visto que eu preciso colocar ainda mais informações, tendo que fazer ainda mais selects dentro deste.
Existe alguma outra maneira para pegar este último valor da outra tabela?
Obrigado.
Link para o comentário
Compartilhar em outros sites
0 respostass 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.