Carregando ...
Desculpe, ocorreu um erro ao carregar o conteúdo.

33065Re: [mssql-l] Limitar registros no retorno da query

Expandir mensagens
  • Ezequiel Gonzaga
    31 de mar de 2015
      Marcos, bom dia.

      Show de bola.
      Era isso mesmo.

      Muito obrigado.



      Em 31 de março de 2015 10:58, Marcos Kirchner marcos.kirchner@... [mssql-l] <mssql-l@...> escreveu:
       

      Ezequiel, sim, com OUTER APPLY é bem fácil.

       

      Algo assim:

       

       

      SELECT p.ProdutoID, p.Nome, c.CompraID, c.DataCompra, ...

      FROM Produtos p CROSS APPLY (SELECT TOP(3) * FROM Compras c WHERE c.ProdutoID = p.ProdutoID ORDER BY c.DataCompra DESC) c

       

       

       

      Deve atender o que você precisa.

       

       

      Abraço,

      Marcos

       

       

       

      De: mssql-l@... [mailto:mssql-l@...]
      Enviada em: sexta-feira, 27 de março de 2015 18:47
      Para: mssql-l@...
      Assunto: [mssql-l] Limitar registros no retorno da query

       

       

      Boa noite.

       

      Preciso montar uma query com as três últimas compras de todos os produtos.

       

      SELECT D1_COD,D1_EMISSAO,D1_VALOR

      FROM SD1010

      ORDER BY D1_COD,D1_EMISSAO

       

      Se eu coloco o TOP (3) ele trás apenas os três primeiros registros do resultado todo e não é isto que eu quero.

       

      Eu quero que traga três registros do produto 1, três registros do produto 2, três registros do produto 3, etc...

       

      É possível fazer isto?

       

      Grato,


    • Mostrar todas as 3 mensagens neste tópico