Ir para conteúdo
Fórum Script Brasil
  • 0

consulta no mysql


Guest Leandro da Cunha Campos

Pergunta

Guest Leandro da Cunha Campos

COMO BUSCAR OS PRODUTOS QUE O CLIENTE NÃO TEM NO BANCO DE DADOS ???

// com essa consulta busco todos meus produtos

SELECT

produto.id,

produto_descricao.descricao

FROM

produto_descricao

INNER JOIN produto ON (produto_descricao.id = produto.descricao)

// com essa consulta busco só os produtos do cliente 9967853

SELECT

venda_detalhes.pedido, venda_detalhes.quantidade,

produto_descricao.descricao, venda_detalhes.unitario,

tipo_status.descricao as status

FROM produto_descricao

inner join ((venda inner join venda_item on venda.id = venda_item.venda) inner join ((venda_detalhes inner join produto on venda_detalhes.produto = produto.id) inner join tipo_status on venda_detalhes.status = tipo_status.id) on venda_item.id = venda_detalhes.pedido) on produto_descricao.id = produto.descricao

WHERE venda.cliente=9967853

ORDER BY produto_descricao.descricao

se alguém puder ajudar obrigado

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Oi 'Leandro da Cunha Campos'!

O que você quer são os produtos que você tem em seu cadastro de produtos mas que o cliente ainda não adquiriu?

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Leandro da Cunha Campos
Oi 'Leandro da Cunha Campos'!

O que você quer são os produtos que você tem em seu cadastro de produtos mas que o cliente ainda não adquiriu?

sim isso mesmo....

eu até consegui com o not exist.. muito bem retorna em menos de 1 segundo... porque minha tabela de produtos tem apenas 236 produtos... e é só um cliente

SELECT produto.id as CodigoProduto, produto_descricao.descricao as Produto

FROM produto_descricao INNER JOIN produto ON (produto_descricao.id = produto.descricao)

WHERE NOT exists(SELECT venda_detalhes.produto FROM produto_descricao

inner join ((venda inner join venda_item on venda.id = venda_item.venda)

inner join ((venda_detalhes inner join produto on venda_detalhes.produto = produto.id)

inner join tipo_status on venda_detalhes.status = tipo_status.id) on venda_item.id = venda_detalhes.pedido)

on produto_descricao.id = produto.descricao WHERE venda.cliente=998765

HAVING venda_detalhes.produto=produto.id)

ORDER BY produto.id

____________________________________________________________________________________________________________

agora tenho de buscar todos os clientes de um vendedor que ainda não compraram.... minha lógica

pego a tabela vendas e vejo quem comprou e retiro as excessões da tabela clientes.... mas minha consulta demora 3 minutos

select clientes.id from clientes where clientes.id_vendedor=18738

not exists (select venda.`cliente` from venda where venda.`vendedor`=18738

group by venda.`cliente` having venda.`cliente`= clientes.id )

teria um outra forma de fazer sem o not exists??

demora assim porque minha tabela vendas tem 80.000 linhas e a de clientes 45.000

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...