MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    [Resolvido]Selecionar 3 registros de cada item

    reginaldohb
    reginaldohb
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2011

    [Resolvido]Selecionar 3 registros de cada item Empty [Resolvido]Selecionar 3 registros de cada item

    Mensagem  reginaldohb 7/6/2015, 03:55

    Olá!

    Tenho um banco de dados, onde existem duas tabelas, Produtos e Compra_Produtos. Resumindo, preciso criar uma consulta na tabela Compra_Produtos, onde a mesma exiba três registros de cada item na tabela, como exemplo, existem 5 itens, que se repetem. O critério para exibição dos registros é a Data_Compra, na Consulta_Compra_Pedidos, ordenando pela data mais recente.

    Já tentei de várias formas, utilizando o Select Top, Distinct, combinações diversas, mas nada funcionou. Pesquisei também no fórum, para verificar se havia algo similar, também, não encontrei.

    Desde já agradeço. O banco de dados, segue anexo.
    Anexos
    [Resolvido]Selecionar 3 registros de cada item AttachmentControle_de_Compras.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (28 Kb) Baixado 16 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Selecionar 3 registros de cada item Empty Re: [Resolvido]Selecionar 3 registros de cada item

    Mensagem  Alexandre Neves 7/6/2015, 06:58

    Bom dia,
    Não entendi bem como pretende a consulta. 3 primeiros de cada produto? pela data recente? pela data mais antiga?
    Dê continuidade ao assunto que abriu e abandonou (https://www.maximoaccess.com/t16538-inserir-campo-automaticamente-no-sub-formulario#124608)


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    reginaldohb
    reginaldohb
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2011

    [Resolvido]Selecionar 3 registros de cada item Empty Re: [Resolvido]Selecionar 3 registros de cada item

    Mensagem  reginaldohb 7/6/2015, 13:53

    Bom Dia, Alexandre Neves!

    No caso, a consulta seria os 3 primeiros registros de cada item (nesse instante são 5), pela data mais recente.

    Quanto ao outro tópico, acredito que não o encerrei.

    Obrigado.

    reginaldohb
    reginaldohb
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2011

    [Resolvido]Selecionar 3 registros de cada item Empty Re: [Resolvido]Selecionar 3 registros de cada item

    Mensagem  reginaldohb 8/6/2015, 14:16

    Consegui fazer com que um item apareça, na Consulta Relatorio_Ultimas_Compras, com as suas três últimas compras. Mas, não consigo exibir os demais itens (Laranja, Batata, Cenoura e Limão), somente Banana, consegui exibir.

    No caso, para a exibição das três últimas compras de um terminado item, utilizei o seguinte código:

    SELECT TOP 3 Compra_Produtos.Id_Compra, Produtos.Produtos, Compra_Produtos.Data_Compra
    FROM Produtos RIGHT JOIN (SELECT * FROM Compra_Produtos)  AS Compra_Produtos ON Produtos.Id_Produtos = Compra_Produtos.Id_Produtos
    ORDER BY Produtos.Produtos, Compra_Produtos.Data_Compra DESC;

    Mas, como disse anteriormente, preciso exibir todos os itens, atualmente, são cinco, podendo ser mais e as suas últimas três compras, em ordem decrescente. O que falta ou o que eu esqueci?
    Anexos
    [Resolvido]Selecionar 3 registros de cada item AttachmentControle_de_Compras-08-06-2015.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (41 Kb) Baixado 18 vez(es)
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8498
    Registrado : 05/11/2009

    [Resolvido]Selecionar 3 registros de cada item Empty Re: [Resolvido]Selecionar 3 registros de cada item

    Mensagem  Alexandre Neves 10/6/2015, 08:52

    Bom dia,
    SELECT Id_Compra, Produtos, Data_Compra FROM Produtos RIGHT JOIN Compra_Produtos ON Produtos.Id_Produtos = Compra_Produtos.Id_Produtos WHERE Id_Compra IN (SELECT TOP 3 Id_Compra FROM Compra_Produtos AS C WHERE C.ID_Produtos=Compra_Produtos.ID_Produtos ORDER BY Data_Compra DESC) ORDER BY Produtos, Data_Compra DESC;


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    reginaldohb
    reginaldohb
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 15
    Registrado : 21/10/2011

    [Resolvido]Selecionar 3 registros de cada item Empty Re: [Resolvido]Selecionar 3 registros de cada item

    Mensagem  reginaldohb 10/6/2015, 22:49

    Obrigado, Alexandre!

    Consegui solucionar utilizando o seguinte código:

    SELECT a.Codigo_entrada, a.Codigo_produto, Produtos.Nome_produto, a.Codigo_Fornecedor, a.Data, a.Qtde_E, a.Valor, [Qtde_E]*[Valor] AS Total
    FROM Produtos INNER JOIN Entrada_Produtos AS a ON Produtos.Cod_produto = a.Codigo_produto
    WHERE (((a.Codigo_entrada) In (SELECT TOP 3 Codigo_entrada FROM Entrada_Produtos AS b
    WHERE b.Codigo_produto = A.Codigo_produto
    ORDER BY Codigo_Entrada DESC)))
    ORDER BY a.Codigo_produto;

    Muito obrigado, pelo auxílio!

    Conteúdo patrocinado


    [Resolvido]Selecionar 3 registros de cada item Empty Re: [Resolvido]Selecionar 3 registros de cada item

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 13:59