none
Busca menor preço RRS feed

  • Pergunta

  • Olá

    Possuo uma lista com alguns campos (codFornecedor, codProduto, preco).

    Gostaria de fazer uma query com linq que retorne a lista dos produtos com menores preços do fornecedor.

    Ex:

    SELECT * FROM nome_tabela A
    WHERE A.preco=(SELECT MIN(preco) FROM nome_tabela
    WHERE codprod=A.codprod);

     

    segunda-feira, 17 de janeiro de 2011 13:16

Respostas

  • Segue exemplo para a classe:

    public class Produto
    {
      public int Id { get; set; }
      public string Nome { get; set; }
      public double Valor { get; set; }
    }
    

    exemplo:

        List<Produto> produtos = new List<Produto>{
          new Produto{Id=1,Nome="Produto 1",Valor=10},
          new Produto{Id=2,Nome="Produto 2",Valor=20},
          new Produto{Id=3,Nome="Produto 3",Valor=30},
          new Produto{Id=4,Nome="Produto 4",Valor=40},
          new Produto{Id=1,Nome="Produto 1",Valor=8},
          new Produto{Id=2,Nome="Produto 1",Valor=90},
          new Produto{Id=3,Nome="Produto 1",Valor=20},
          new Produto{Id=4,Nome="Produto 1",Valor=1},
          new Produto{Id=1,Nome="Produto 1",Valor=5}
        };
    
        var query = from c in produtos
              group c by c.Id into g
              select new { Id = g.Key, valor = g.Min(c => c.Valor) };
    
        var listQuery = query.ToList();
    


    Olavo Oliveira Neto
    Se for útil marque como resposta e faça um Developer feliz :)
    segunda-feira, 17 de janeiro de 2011 14:00
    Moderador