Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
boa noite galera...
seguinte, consegui fritar mais da metade dos meus neuronios, que ja n eram muitos...
estou com um pepino
estou desenvolvendo um sistema que é o sguinte
tabelas:
clientes (id, nome)
pedidos (id, cliente, valor)
faturamentos (id, pedido, quantidade)
dpedidos (id, cliente)
dfaturamentos (id, pedido, quantidade, valor)
preciso fazer um ranking de clientes
ou seja
exibir em ordem de maior valor os clientes... quem vendeu mais no caso.
SUM((faturamentos.quantidade * pedidos.valor) + (dfaturamentos.quantidade + dfaturamentos.valor))
algo +- assim.
mas n sei fazer query... ja tentei fazer de diversos modos, mas n consigo.
teria que sair assim
cliente QUANTIDADE VALOR
1º NOME QUANTIDADE VALOR
mas n consigo fazer a ordenaçao, com duas querys, consultando cada coisa eu consigo fazer a soma, mas n consigo ordenar.
alguem tem alguma ideia ?
simples
pedidos.cliente = cliente.id
faturamentos.pedido = pedidos.id
dpedidos.cliente = cliente.id
dfaturamentos.pedido = dpedidos.id
Seria mais fácil você adicionar um campo em clientes, chamado faturamento ou outra coisa qualquer, e a cada compra do cliente soma-se o valor lá, e na hora de exibir em ordem, faça sua query do MySQL assim: "SELECT * FROM clientes ORDER BY faturamento DESC".
Dessa forma seriam exibidos dos "melhores" clientes para os "piores".
não há possibilidade disso ser feito.
sistema ja trabalha a algum tempo.
e como sao diversas compras diarias, seriam operaçoes desnecessárias a atualizaçao desse valor.
exporte as tabelas do banco com alguns registros e cole aqui.
como q está sua query??
Não consegui identificar como as tabelas estão se relacionando, os nomes de algumas tabelas e campos não foram muito sugestivos.