Qual oferece melhor desempenho uma grande associação ou várias consultas?
Eu tenho uma tabela chamada ordens. uma coluna no pedido é customer_id
Eu tenho uma tabela chamada clientes com 10 campos
Dadas as duas opções, se eu quiser construir uma matriz de objetos de pedido e incorporado em um objeto de ordem é um objeto de cliente eu tenho duas opções.
Opção 1:uma. primeira tabela de pedidos de consulta. b. percorrer registros e consultar a tabela de pessoas para obter os registros para a pessoa
isso seria algo como:
Select * from APplications
Select * from Customer where id = 1
Select * from Customer where id = 2
Select * from Customer where id = 3
Select * from Customer where id = etc . . .
Opção 2:uma. faça uma junção em todos os campos
é um óbvio # 2 porque você está fazendo apenas uma consulta versus 1 + [numberOforders] consultas (podem ser centenas ou mais)
Isso seria algo como:
Select * from Applications a, Customers c
Innerjoin c.id = a.customerID
minha principal questão é, se eu tivesse 10 outras tabelas que estavam fora da tabela de pedidos (semelhante ao cliente), onde você tinha o id na tabela de pedidos. você deve fazer uma única consulta que junte essas 10 tabelas ou em algum momento é ineficiente fazer isso:
qualquer sugestão ajudaria .. existe alguma otimização para garantir um desempenho rápido