Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

maicon_m

[Resolvido] Selecionar por data, depois agrupar

Recommended Posts

Bom dia senhores.

 

Tenho a seguinte estrutura de tabelas (apresento apenas os campos relevantes):

 

TABELA PEDIDOS:

 

id session_id entrega

 

TABELA CARRINHO:

 

id produto qnt cor tamanho session_id

 

TABELA PRODUTOS:

 

id nome referencia categoria materia_prima texto disponibilidade preco

 

 

A lógica é a seguinte: ao ver um pedido, ele pega o session_id do pedido, linca com a tabela carrinho para descobrir o cliente e outras informações e por último olha nos produtos para saber quais produtos compõe essa session_id.

 

Necessito mostrar resultados segundo os seguintes critérios:

 

digamos que eu cadastrei 200 pedidos,

destes 200 pedidos,

50 tem data de entrega para janeiro

90 tem data de entrega para fevereiro

60 para março

entao eu farei a ordem de produçao para janeiro.

todos os pedidos para entrega em janeiro serao unidos em uma tabela onde todos os produtos destes pedidos estao selecionados.

 

destes 50 pedidos, terao varias referencias em comum entre eles,

por exemplo a referencia 01234 foi vendida da seguinte forma:

10 para o pedido 01

01 para o pedido 15

50 para o pedido 16

09 para o pedido 36

toral de 70 peças para produzir em janeiro para a referencia 01234

 

 

O filtro pela data tranquilo, mas não consigo raciocinar como dividir o resultado por referências.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seria um segundo select coma data como parametro agrupando pela referencia.

 

Eu faria uma Stored procedure

 

 
cursor select agrupamento datas
enquanto nao fim
  cursor select agrupamento por referencia (data parametor)
  enqunato nao fim
     grava tabela pedidos_entrega
  fim enquanto
fim enquanto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela agilidade em responder Motta.

 

Tentei entender como adaptar isso para o sql/php (select * from...) e não consegui. Você poderia me ajudar nisso?

Compartilhar este post


Link para o post
Compartilhar em outros sites
TABELA PEDIDOS:

 

id session_id entrega

 

TABELA CARRINHO:

 

id produto qnt cor tamanho session_id

 

TABELA PRODUTOS:

 

id nome referencia categoria materia_prima texto disponibilidade preco

 

Tente assim (sem cursores) :

 

select p.id,year(p.entrega) ano,month(p.entrega) mes,pr.referencia,count(p.id) qtd
from pedidos p,carrinho c,produtos pr
where p.id = c.id
and c.produto = pr.id
group by p.id,year(p.entrega),month(p.entrega),pr.referencia

 

Esta query deve ser a base para criar a outra tabela.

 

Não sei se ajudei.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.